Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Spermatozoon Attack

Iniciado por blau, 11 de Septiembre de 2010, 01:21:38 AM

« anterior - próximo »

blau

He vuelto a actualizar con mas mejoras, ya esta incorporado el componente para compartir highscores, se contempla el trial mode, asi como algunas otras mejoras graficas y de jugabilidad. (aros intermitentes)

El F1 ahora pasa el nivel. :)
El F2 muestra el área de exclusión para la tele.

En el highscore guardo la puntuación y el nivel en el que se consiguió
Y tb se comparte por cada nivel el numero intentos que se han necesitado, para ver quien lo ha hecho en menos ocasiones.

Me he dado cuenta que en la xbox tarda una eternidad en grabar en el storage... tendré que hacerlo en un hilo aparte.

@legion al final me ha quedado un fondo pasable...  he tirado de mis años viejos para hacer un efecto fuego simulando la paleta con shaders, ;)

Ya se va acercando el final....

blau

El efecto del fondo no funcionaba en una tarjeta integrada, así que lo he actualizado a Pixel Shader 2.0 ... y desactivado el bloom por el momento, porque bajaba demasiado el rendimiento. ahora va a 60 fps en un pc de oficina. :)

http://astro.estanuestraweb.com/deploy/Pepino.rar

saludos

The_Dragon_Ladis

Pepino dejó de funcionar...

Me peta, ya no se ejecuta :(

blau

 
Cita de: The_Dragon_Ladis en 25 de Octubre de 2010, 03:12:33 PM
Pepino dejó de funcionar...

Me peta, ya no se ejecuta :(

Uupss... pues tiene que ser algo raro que haya hecho que no sea compatible con tu gráfica :(

blau

@dragon_ladis

Ya se que te pasa, no tienes el windows for games instalado, y no puedo inicializar el GamerServicesComponent.
Ya esta detectado y solucionado, te he actualizado el comprimido en la web.
Lo que no se es si cascara por otro lado, pues he integrado los highscores y la deteccion del trialmode basandome en eso.   ^_^'

The_Dragon_Ladis

Pues Games for Windows si que lo tengo... Así que eso no puede ser blau.

Voy a bajarlo y te digo si sigue petando.

WaaghMan

El redistributable de XNA no incluye el componente GamerServices porque Microsoft no permite distribuir juegos para Windows que lo usen, probablemente sea por eso.

Hace un tiempo intenté hacer un componente que hiciese de Dummy para que el juego siguiese compilando y más o menos funcionando, pero es difícil de probar porque me hacía falta un Pc sin el SDK para ver cómo se comportaba :S
Milkstone Studios - Autores de Avatar Ninja!, Little Racers, MotorHEAT y Wool en Xbox Live Indie Games

blau

#37
Cita de: WaaghMan en 26 de Octubre de 2010, 08:20:04 AM
El redistributable de XNA no incluye el componente GamerServices porque Microsoft no permite distribuir juegos para Windows que lo usen, probablemente sea por eso.

Esta es de esas políticas de Microsoft algo tontas que me fascinan.... si tienes un servicio lo mas normal es que cuanto más lo des a conocer mejor... aunque sea capado... pero no, hay que ir de elitista y dejar que el PC se vaya muriendo. Ahora creo que quieren hacer que se parezca a Steam... y se gastaran una pasta para promocionarlo...

Cita de: WaaghMan en 26 de Octubre de 2010, 08:20:04 AM
Hace un tiempo intenté hacer un componente que hiciese de Dummy para que el juego siguiese compilando y más o menos funcionando, pero es difícil de probar porque me hacía falta un Pc sin el SDK para ver cómo se comportaba :S

Yo probe este código dentro del Initialize() anoche en un PC limpio y se comporta bien:


Código (csharp) [Seleccionar]


           base.Initialize();

           try
           {
               GamerServices = new GamerServicesComponent(this);
               GamerServices.Initialize();
               Components.Add(GamerServices);
               StatesManager.Push<StateHighScores>(true);
           }
           catch (GamerServicesNotAvailableException e)
           {
               Logger.Log(20, "GamerServices can't be initialized");
               Logger.Log(20, e.Message);
           }
           finally
           {
               StatesManager.Push<StateBloom>(true);
               StatesManager.Push<StateFuego>(true);
               StatesManager.Push<StateTrialMode>(true);
               StatesManager.Push<StateStart>(true);
           }


WaaghMan

Hombre, eso está bien al inicializar pero luego si haces un Guide.ShowMessageBox por ejemplo, o un ShowStorageDeviceSelector, petará, no?

O lo que es peor, al usar SignedInGamer, porque en esos otros casos se podría tirar de excepciones ya que de todas maneras siempre tienen riesgo de fallar, pero esta otra se usa más habitualmente y tirar de excepciones todo el rato puede perjudicar mucho el rendimiento...
Milkstone Studios - Autores de Avatar Ninja!, Little Racers, MotorHEAT y Wool en Xbox Live Indie Games

Vicente

Y meter todo el código de los GamerServices en un #if XBox360?

blau

#40
Cita de: WaaghMan en 26 de Octubre de 2010, 09:46:13 AM
Hombre, eso está bien al inicializar pero luego si haces un Guide.ShowMessageBox por ejemplo, o un ShowStorageDeviceSelector, petará, no?

O lo que es peor, al usar SignedInGamer, porque en esos otros casos se podría tirar de excepciones ya que de todas maneras siempre tienen riesgo de fallar, pero esta otra se usa más habitualmente y tirar de excepciones todo el rato puede perjudicar mucho el rendimiento...

Pues la verdad es que no lo he probado todo 100%,  pero creo que solo tiro de los SignedInGamers cuando están los highscores activos, y si accedo a ellos en algún otro lado es a través de la colección, lo cual no debe dar problemas, porque simplemente no habrá signedingamers. La gestión de los players es totalmente independiente de estas clases y solo las uso par aobtener informacion cunado esta disponible.

Respecto al storage solo lo uso para guardar los highscores, así que como no los activo, no se tira del storage.

@Vicente: En cualquier caso, no entiendo pq no se da acceso a estos servicios desde PC... aunque haya cosas capadas. Deberías proponerlo en la próxima quedada de la empresa :P

EDIT: También estaría muy bien que puedan hacer login varios usuarios en un PC, aunque sea para hacer pruebas.

blau

He vuelto a poner el juego en playtest, si alguien quiere echarle un ojo y comentarlo será bienvenido. :)




blau

Tb he actualizado la version PC, aunque advierto que no es para graficas cobardes... con el nuevo efecto del fondo en mi PC mas perrero va a 24fps, aunque compensa visualmente ;)

He tenido que capar mucho el shader y pasarlo a 2.0 pero me ha sorprendido que sigue viendose bastante bien. :)

F1 pasa de nivel, X aumenta la velocidad, F3 cambia el color del fondo,... no se si me dejo algo.

el enlace es el de siempre.

Aah, no esta probado fuera del entorno de desarrollo, espero que no de problemas...

Vicente

Cita de: blau en 26 de Octubre de 2010, 12:40:53 PM
@Vicente: En cualquier caso, no entiendo pq no se da acceso a estos servicios desde PC... aunque haya cosas capadas. Deberías proponerlo en la próxima quedada de la empresa :P

Apuntao :)

blau

#44
Bueno, estoy en la fase de terminar de darle lustre, ahora le toca al tema del multijugador, mi idea es dar alguna posibilidad de cambiar el modo de juego, dentro de las limitaciones de la mecanica.

Para eso he definido los siguientes tipos de juego en funcion de la parte de la mecanica a la que afectan.


enum MultiplayerSpermSelectionMode { Instant, TurnBasedSequencial, TurnBasedSmartRandom } 
enum MultiplayerLevelSelectionMode { SequencialLevels, RandomLevels, FixedLevel}                           
enum MultiplayerNumberOfRounds { PlayAllRounds=50, Play3Rounds=3, Play5Rounds=5, Play10Rounds=10, Play15Rounds=15 }

1) MultiplayerSpermSelectionMode : Decide que hacer cuando un player esta sin espermatozoide
2) MultiplayerLevelSelectionMode : La forma en que se decide el siguiente nivel
3) MultiplayerNumberOfRounds : Trivial


El unico ambito que creo que me falta es el de la puntuacion, pero creo que voy a dejar el sistema de puntuacion standard, que consiste en:

1)  Puntuacion maxima de 200 puntos cuando es la primera vez que juegas el nivel, 100 puntos por pasartelo y otros 100 en funcion de los esperamtozoides que uses para pasarte el nivel, quitando 10 puntos por espermatozoide usado de mas.

2) Por cada vez que falles el nivel tienes una penalizacion acumulativa del 50%, es decir al primer fallo solo podrias conseguir 100 puntos (50+50), al segundo fallo solo podrias conseguir 50 puntos (25+25)..... hasta n

Si alguien sabe como explicar esto en ingles me vendria muy bien.  ^_^'

En fin de cuentas, si a alguien que lo haya probado  se le ocurre alguna idea al respecto del multiplayer ahora mismo es bienvenida. ;)









Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.