Thread Rating:
  • 2 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Vanilla Éclair (working title)
#61
(11-08-2012, 10:18 PM)Ionutzel Wrote: Nici n-are nevoie de lumina vegetatia.

Becuri frate. Smile Sau fac magicienii niste magii cum erau in gothic acele scrolluri de light. Si problema e rezolvata. Haha
----------------Worldofgothic----------------
---------PLAY
replyReply
#62
Lumea in care plasezi jocul e "construita" de tine cu un program de grafica 3d sau folosesti doar modele "prefabricate" cum e eroina Mirinda?
replyReply
#63
In nivelul de test (din ce fac eu screenshot-uri) folosesc modele separate pentru fiecare camera. Voi ramane la reteta asta pentru unele nivele din jocul final, dar pentru altele va fi cazul sa generez un teren mai mare si mai complex; Unity are un editor pentru asa ceva.

In other news, I'll pack everything and call it a day. Azi a fost cea mai benefica zi pentru proiect din ultima vreme Smile Pe langa cateva fix-uri foarte importante aduse sistemului de movement/look, tratarii trecerilor de la o interfata la alta (e.g. inventory -> free play), am gasit si o gramada de modele gratuite pe Unity Asset Store cu care voi putea sa termin in totalitate partea de minerit (mai aveam nevoie de un pickaxe) + altele utile mai tarziu. Also, gold coins!
Hints on the story:
Moneda de aur este... moneda de schimb a cetatenilor. Banditii au alta moneda de schimb, nefiind atat de cizelati. Totusi, in caz ca ai N monede de aur, s-ar putea sa gasesti un anume bandit interesat sa faca un schimb valutar. Heh.

Gold coins!
Show Content
Gold coins on a table!
[Image: 99nkut.png]
Inventory-ul cu mai mult de 2 items in el (pentru prima oara):
[Image: 6eqbly.png]
replyReply
#64
Am combinat pentru prima oara (via interfata) 2 ingrediente: mushrooms + bowl => bowl of mushrooms.
In other news: some more free models (si implicit items) added Smile Gasit-am si un pack cheap ($5) cu modele de mancare, cu vreo cateva in 2 variante: prajit/neprajit. In special pui prajit/neprajit. O sa-l iau zilele astea - va fi util later on.

Tons of pics:
Show Content
replyReply
#65
Faina chestia.
"Errare humanum est sed perseverare diabolicum."
"Gutta cavat lapidem non vi, sed saepe cadendo."
"Inter arma silent leges."

replyReply
#66
Am prajit un peste. So, techincally, acum se poate praji mancarea Smile
[Image: 2ywampl.png]
Also, cateva functii noi au fost adaugate inventory-ului (din background).
replyReply
#67
Haha, codul din spatele Gothic-ului m-a inspirat din nou si am gasit o solutie super eleganta pentru o problema deosebit de dificila. Serios, sursele celor de la Piranha Bytes ar trebui puse toate intr-un document numit "Referinta pentru dezvoltatorii de jocuri".
replyReply
#68
Important notice: carnat = tech stuff.

Din cauza bug-ului cu enum-ul si din cauza ca a aparut nevoia unor comportamente custom ale item-urilor, aveam nevoie de o solutie mai buna decat cea de dinainte.
Two hours and a beer later, gasit-am si solutie Smile Am postat aici multi carnati (mai interesanti sau mai putin interesanti), iar dupa mine asta e cel mai interesant de pana acum.

Prima data aveam in plan mosteniri, si cate o clasa per item, avand in vedere ca ar fi fain un comportament flexibil si complet custom, pentru item-uri.
But then... daca ar fi fost 900 de items, am fi avut 900 de clase? That sucks. Prea stangaci si !elegant. Am ajuns la, dupa parerea mea, cea mai buna solutie avand in vedere structura existenta. Si de ce nu, o solutie excelenta din mai toate punctele de vedere. Solutia se bazeaza pe delegates (think pointeri catre functii (C++)).

Puncte forte:
- Structura solutiei este curata, si permite dezvoltarea cu usurinta a comportamentelor custom.
- Nu a fost nevoie sa modific decat o linie de cod din ce aveam deja; solutia s-a "instalat" ca un addon, iar la final am scos ce nu mai trebuia din lucrurile vechi.
- Cand vrem comportament custom, codul nou se rezuma doar la o functie extra implementata.
- Avem libertatea dorita cand vine vorba de comportament custom.
- Aceeasi solutie poate fi folosita la ORICE alt element din joc care utilizeaza comportamente custom. Spre exemplu, putem folosi acelasi sistem pentru a defini: rutine custom pentru fiecare personaj in parte, reactii custom a obiectelor interactive si-asa mai departe. Totul cu 1 singura clasa de baza + 1 metoda.
- Volumul de cod este suficient de scazut, DAR...
- poate fi scazut si mai mult folosind metode comune pentru obiectele deloc diferite. Spre exemplu, 5 mancaruri banale care influenteaza atribute si nimic mai mult, ar putea sa aibe ca si comportament o functie comuna DEFAULT_CONSUME.

Screeny details:
Delegate & base item class:
Se pot adauga usor alte functii delegate, pentru un alt tip de comportament. De exemplu, pentru un eveniment cu totul nou: ridicarea unui obiect.
Vrem sa avem un inel blestemat in ceva cripta uitata, iar in momentul in care jucatorul il ridica de jos, sa primeasca un curse de toata frumusetea care sa-l faca sa uite toate magiile? Ba chiar mai mult, sa inceapa imediat un summon undeads, ca sa se invete minte (jucatorul, nu inelul)? Nimic mai simplu; un delegate special pentru noul eveniment, de exemplu PickUpEvent, si un camp nou in BaseItem, precum OnPickUp.
Mai ramane doar sa implementam functia custom, dupa structura delegate-ului, si sa o atribuim item-ului.
[Image: 2yphnqx.png]

Sample events (consume):
Functiile custom; in imagine doar consume-uri.
[Image: 2ljs3o8.png]

Items:
Se observa usurinta cu care se atribuie o functie custom unui item. E basically doar un assign.
[Image: 350w42f.png]
replyReply
#69
Quick gameplay video: combining 2 items.

http://www.youtube.com/watch?v=xG8G7qKMWIg
replyReply
#70
Grand reveal-ul va avea loc pe 23 Decembrie; in acea zi va fi facut public numele real al jocului + intreaga poveste.
Si... o surpriza Smile
replyReply


Forum Jump:


Users browsing this thread: 4 Guest(s)