Gå til innhold

South_Bridge's Garage: XNA TowerDefence


Anbefalte innlegg

XNA Towerdefence

 

Tekniske nøkkelord: C#, XNA, XBOX, PC, XML, Visual Studio 2008, design pattern, game design, 2D, sprites

 

Jeg ønsker med dette prosjektet å lære litt mer om spillprogrammering og xna. Grafikken er atm et tileset som jeg har lastet ned fra xna. Grunnen er meget enkel, jeg er ikke så god til å lage en totalløsning hvor alt blir like bra. Dette er også en one-man-army greie(atm), så da har jeg ikke store ressursene tilgjengelig.

 

Jeg vil av og til legge test av spillet opp på siden min, Larsey.net, men for at du skal kunne kjøre spillene uten å ha C# og XNA Game Studio installert må du installere denne: Microsoft XNA Framework Redistributable 3.1

 

Kommentarer kan legges til i kommentartråden.

Endret av South_Bridge
Lenke til kommentar
Videoannonse
Annonse

spillUtvikling0001.jpg

Første build(omtrent). Fienden(rød) kommer ovenfor og går igjennom waypoints(det gule).

 

spillUtvikling0002.jpg

Har fått på et tårn(grønt) og ved dens update sjekker den en liste med fiender. Om noen av de er innenfor skyteradius vil den skyte som vist ovenfor.

 

spillUtvikling0003.jpg

Har fått roa ned spamminga til tårnet(grønn) og kan nå bestemme hvor fort den skal skyte(her veldig tregt)

Endret av South_Bridge
Lenke til kommentar

spillUtvikling0008.jpg

Fikk lagt et veldig simpelt tilesystem i dag. type map.txt hvor innholdet er

 

01230000

01230000

01245555

01222222

06777777

(-ish)

 

Som jeg er veldig misfornøyd med. en liten haxx for å få det på plass liksom. Kunne godt ha tenkt meg å laget en editor og lagret mapet i xml eller noe i sted. Vi får se hvordan tiden strekker til. Med full jobb får jo gjerne indie-prosjekta tid her og der...

Endret av South_Bridge
Lenke til kommentar

spillUtvikling0009.jpg

Har lagt til en fiende til(totalt 4 som spawner), og som bildet illustrerer så går fienden(rød) opp i røyk når de dauer(tårnet(grønn) har skutt ned den første fienden).

Det er ikke så mye animasjon ennå, men det kommer vel det også med tiden.

Endret av South_Bridge
Lenke til kommentar

spillUtvikling0011.jpg

Fikk begynt på en enkel MapEditor i går. Meninga er å dytte ut noe XML for map, waypoints for fiende og slikt.

Og ja, TileChooseren min er litt off på hvert enkelt tile. Bomma litt da jeg satte opp størrelsen og krympinga. Ville ikke ha den like stor som den andre :D

Endret av South_Bridge
Lenke til kommentar

spillUtvikling0012.jpg

Har satt ned tilestørrelsen. Den var 64x64 per tile, men det ble litt for stort så scalet den ned til 40x40 (pixels). Liker at jeg fikk den til å lagre xml, det var easy og nice.

Alt det grønne+ de tilsa med litt mørkegrønt, med hvite blomster og litt gress er random generert nå applikasjonen åpnes, så slipper jeg å sette alle

Jeg kan da klikke på hvilken som helst tile i hovedvinduet så popper TileChooser opp. :D Erstatter den valgte med ny tile som velges i TileChoosere

 

Kom på da jeg skrev DETTE at jeg må legge til funksjon for å lage walkingroute for fiender. Kanskje får jeg gjort det i løpet av helja :D

Endret av South_Bridge
Lenke til kommentar

spillUtvikling0013.jpg

Da er mapeditoren kommet til versjon 0.7. Det som mangler til 1.0 versjon er muligheten til å loade en XML fil slik at man kan fortsette et arbeid. men DET tar jeg på sikt. Nå vil jeg tilbake til utvikling på spillet å få den til å støtte xmlmaps i første omgang.

De ulike mode'ene er til for å velge om man vil plassere ut waypoints(gule) eller endre på tiles.

 

Jeg vurderer også å release editoren(programmet), så andre kan ta en titt på den om det er noe interesse for det.

Lenke til kommentar

Det er jo ikke så morsomt med en post uten bilde, men av og til er endringen liten ELLER jeg har fiksa på noe som jeg antok på et tidligere stadie funket.

 

Dette gjaldt mapeditoren. Fikk lagret til XML men da spillet skulle lese den ble det helt galt, fiksa på det men fremdeles så var det litt buggy.

Har haxxa det til nå da føler jeg. Enkleste fixen på problemet mitt var at jeg hadde en index på Button classen, men Button har ikke index som jeg tenker på (tenker ikke på z-order). Løsningen ble at jeg lagde en CustomButton som arvet fra Button og som _bare_ hadde public int order som medlemsvariabel.

 

Jeg føler jeg har god progress på dette spillet. Jeg får ting oppe å kjøre med >80% success, men jeg ser for meg at jeg vil på eller annet stadie ønske og gå tilbake og kanskje kode om på ting.

Kanskje jeg burde gjøre det med en gang, men jeg er hungrig på resultater og av og til ser man ikke andre løsninger før man faktisk har gjort et stykke arbeid.

Ang >80% success kan jeg jo legge til at hittil gjør jeg ikke noe vanskelig igrunn. Jeg leser jo bare data og flytter på tall. Eneste som kan kalles spenstig i forhold til resten av koden er at fiendene roterer til riktig waypoint, og for å gjøre dette bruker jeg noe arctan og greier :D :D hehe. Blir mer "spennende" (jeg synes det er spennende å få ting å funke. Kunsten er å lage et bra spill, det er det som er utfordringen) sånn etterhvert når jeg skal finpusse og prøve og optimize.

Endret av South_Bridge
Lenke til kommentar

spillUtvikling0014.jpg

Har et par updates. Har fått på en cursor for musinput OG XBOX360 input(gamepad analogstickke). Videre har jeg også lagt inn ordentlig fiendesprites(goblin'en), men jeg synes de ble litt "flate" etter å ha måttet scale dem. Hadde kanskje ikke satt på maksimum kvalitet da jeg gjorde det kanskje? De animerer at de går iaff :D

Endret av South_Bridge
Lenke til kommentar

Liten update på editoren. Man kan nå lage så store maps man bare vil. Fra 1x1 tiles til 9999x9999 (uendelig) tiles.

 

Jeg tror IKKE jeg kommer til å legge til testing på input, om brukeren faktisk setter inn at mappet skal være 9999x9999 så får han takle at det krasjer og. Å sjekke hva brukeren setter inn akkurat der er easy og sjekke, men jeg har bestemt meg for å ikke teste noe indata da dette går som "finpuss" senere om jeg gidder.

 

Må fremdeles lage det slik at waypoints kan editeres/slettes og vil gjerne lage en zoom funksjon som om man lager 256x256 så kan man se hele mappet siden man egentlig ikke ser mer en 19x11 når størrelsen på tilene er 100%

Lenke til kommentar

spillUtvikling0015.jpg

Versjon 0.8!

 

Editoren kan nå:

* Editere tiles

* Batchoperasjon av ovenfor hvor man velger en tile og kan da legge den ut på flere tiles i mappet.

* Lage maps i valgt størrelse (høy størrelse anbefales ikke).

* Lagre til XML

* Loade XML

* Zoom for å gi en bedre oversikt(om man har et map på 5000x5000 (ikke å anbefale) så kan man zoome ut og få et totalinntrykk)

 

Ting som mangler:

* Editering av waypoints.

 

Versjon 0.8 kan lastes ned (ta-daa) her: http://larsey.net/index.php?page=files

 

For de som surfer nettet med noe annet en Firefox så vil nok siden min krangle med deg, direktelink er her: http://www.larsey.net/files/2dmapeditor_v08.zip og grunnen til at jeg ikke gir direktelink med en gang er at den første linken regger antall nedlastninger (som er grei statistikk å ta vare på).

Endret av South_Bridge
Lenke til kommentar

spillUtvikling0016.jpg

Har begynt på byggefunksjonalitet, her vist med at jeg har klikket på menybaren min i bunnen og valgt meg en kriger som jeg nå flytter rundt med musa (den lame pila ca midt på det :D)!

 

Så ser dere også mitt potensialet når det kommer til grafikk(må lage min egen ut over det jeg ikke finner i pakka jeg har lasta ned). Menybakgrunnen min har runde fancy kanter i en ellers nokså tidsriktig grå farge(not). Musa onscreen er også i samme stilen, med vekt på det rene og det enkle! (hehe, jeg er ironisk. jeg er skikkelig dårlig til å lage grafikk). Elementene på menybaren min burde også ha blitt uthevet på en måte som forteller at her er det noe å klikke på.

 

Et annet problem jeg har er at musa klikker for mange ganger når jeg klikker. Jeg tester på om musa sin venstre knapp holdes og selve funksjonen oppdateres 60 ganger i sekunder. Det vil si at om jeg holder venstre museknapp inne et sec så utfører jeg 60 kommandoer. "Nice". Jeg må kode det slik at jeg låser det. Må vel sjekke om musa's venstre knapp er nede. hvis ja, sett en variabel og på muse state er lik "fri" (ikke noe klikk) rett ETTER en klikk så skal den gjøre det den skulle gjøre (sette ut et tårn, velge en items+++)

 

EDIT: museproblemet mitt er løst :)

Endret av South_Bridge
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...