donderdag 18 februari 2010

Weer een succesvolle proximity test

Ik had al tests gemaakt waarin een trigger actief werd als er iemand in de buurt kwam (de 3 vs 1 marine case). Echter was er nog geen mechanisme met berichtgeving wanneer iemand weer buiten bereik kwam. Hier is nu ook een mooi testje voor gemaakt. Ik heb een stationaire gun op het speelveld gezet, met een flinke actie radius.
Vervolgens laat ik 1 marinier vanaf grote afstand langslopen (maar wel de straal van de gun doorkruisen) en 1 marinier laat ik vlak langs de gun lopen. Degene die vlak langs loopt is het langst in bereik van de gun en zou dus de meeste schade op moeten lopen.

En dat was ook zo :-)
Degene op afstand liep 50% schade ongeveer op (had 73 van de 150 punten over)
en degene die dicht bij liep stierf.

Weer een test geslaagd!

Posted via email from posterous of Matthijs Groen

Wapen selectie

De eerste case van wapen selectie is een feit!

Units kunnen nu meerdere typen wapens gebruiken, en kiezen zelf per target het juiste wapen. 
Zo heb ik ook een case gemaakt met een Luchtschip vs. grondtroepen, waarbij de grondtroepen niet tegen luchtschepen konden schieten. En de grond troepen werden rustig een voor een weggetikt, terwijl het luchtschip geen schade opliep.

Volgende stap is wapen ranges.. Nu kan iedereen zover knallen als hij kan zien, en dat moet dus anders, dat als ze een vijand zien wellicht nog een stukje afstand af moeten leggen voordat ze kunnen vechten. Ook moet er nog getest worden met vijanden die weer 'out-of-range' gaan dat het schieten dus weer stopt. Test-case hiervoor is een Turret die stationair op een passerend vijandelijke unit gaat schieten totdat hij weer buiten bereik is.

Nog veel stappen te gaan voor combat alleen, maar we komen echt steeds dichterbij!

Posted via email from posterous of Matthijs Groen

maandag 15 februari 2010

Combat usecase werkt

Nou na een dagje goed prutsen werkt de proximity detection.
Als 1 marinier nu naar 3 vijandelijke wordt gestuurd dan word nu die ene fatsoenlijk overhoop geschoten omdat de 3 hem nu 'aan zien komen'. Eerst werden de 3 gewoon een voor een neergemaaid. Alle openstaande scenario's werken nu dus naar behoren (alle cucumber tests slagen). Nu wordt het dus tijd om nieuwe scenario's te verzinnen die niet werken. 

Bijvoorbeeld:
- Gebouwen upgrades die nieuwe abilities geven
- Air voertuigen die wel op grond targets kunnen schieten maar niet vise-versa
- Stealth units

Dit zijn natuurlijk gewoon engine reken zaken, en ondertussen worden de dingen al dermate complex dat het al nodig begint te worden dat je kan 'zien' wat er nu daadwerkelijk gebeurt.
Kortom: het wordt nu ook wel tijd om een client te gaan maken om de spelwereld weer visueel te maken. Mijn plan voor nu is experimenteren met een Javascript client, en de graphics via SVG te doen. 
SVG heeft als voordelen:
- Kleine bestanden
- Source is XML, zo zijn teamkleuren makkelijk in graphics te verwerken
- Wellicht kan blender zelfs SVG fatsoenlijk exporteren? (thanks Frans!)
- Misschien gebruik kunnen maken van het animatie framework van SVG
- Vector based, dus map zooming zou ook zomaar eens kunnen

Uiteraard gaat SVG ook beperkingen meebrengen zoals browser ondersteuning, en het feit dat de graphics vector based worden. Bij Bitmaps kan je echt voor foto realistische gebouwtjes gaan, bij vector wil je het denk ik toch meer cartoony houden. Nu heb ik daar nog geen voorkeur voor.. eerst de speelbaarheid op orde hebben :-) Performance in browser tussen SVG en PNG gaat dus zeker wel meewegen, maar dat moet eerst door tests ondervonden worden.

Anyway.. er is voortgang, en hopelijk binnenkort ook weer wat grafischere dingen om te tonen :-)

Posted via email from posterous of Matthijs Groen

woensdag 10 februari 2010

Proximity detection onderweg.

Na een flinke avond prutsen, komt er eindelijk een begin aan proximity detection. De PostGis functies worden al flink uitgenut, en ook met Ruby kan ik al mooie conversie slagen doen tussen de data in de DB en de code. Met een beetje geluk kunnen we binnenkort testjes maken met stationaire turrets en langsrijdende tanks die, wanneer in zicht en bereik, onder vuur genomen worden.

In het kort, er begint weer een beetje voortgang in te komen.

Posted via email from posterous of Matthijs Groen