Gamestudio Links
Zorro Links
Newest Posts
Data from CSV not parsed correctly
by dr_panther. 05/06/24 18:50
Help with plotting multiple ZigZag
by degenerate_762. 04/30/24 23:23
M1 Oversampling
by 11honza11. 04/30/24 08:16
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
2 registered members (ChrstphFr, AndrewAMD), 868 guests, and 5 spiders.
Key: Admin, Global Mod, Mod
Newest Members
firatv, wandaluciaia, Mega_Rod, EternallyCurious, howardR
19050 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 1 of 2 1 2
einfacher Techbaum #59377
11/20/05 19:12
11/20/05 19:12
Joined: Jun 2002
Posts: 40
Berlin - Deutschland
Aron Offline OP
Newbie
Aron  Offline OP
Newbie

Joined: Jun 2002
Posts: 40
Berlin - Deutschland
Da ich für mein Spiel "Planets - Unification" (ein einfaches RTS) einen Script brauchte, mit dem ich rel. einfach
und unabhängig einen Technologiebaum auslesen und auswerten kann, hab ich mir den kurzerhand selbst geschrieben.

Er ist noch nicht ganz fertig, z.Z. ist es mehr eine Art InGame Hilfe oder sowas.

Naja aufjedenfall wollte ich das Ding mit euch teilen, weil ich denke, dass nicht nur ich sowas brauchen kann.

Ich wollte den Script möglichst modular haben, damit ich ihn auch in späteren Programmen wieder einsetzen kann.
Das ist mir recht gut gelungen denke ich.

Code:
 

/*
* Techtree.wdl - Version 0.2
*
* Modul zum auslesen von Techtreeinformationen oder InGame-Tooltiphilfen aus einer Textdatei
*
* Vorgehensweise zum Einbinden:
* 1. Einbinden per include ( include<techtree.wdl>; )
* 2. über setTechFilename("DATEINAME") den Dateinamen des Techtrees einstellen (default:techtree.txt)
* 3. per initTechtree("TRENNUNGSOPERATOR"); den techtree initialisieren ( empfohlen: ";")
* 4. einfach über die get* Funktionen die Informationen als Strings auslesen und weiterverarbeiten
*
* Beispiel für eine techtree.txt mit 2 einträgen :
* Bergbau;300;1000;2000;3000;Erlaubt den Bau von:;Erzmine,Deuteriummine,;Kristallmine
* Laser;300;150;1111;3333;Wird benötigt um;Laserwaffen und lasergesteuerte;Raketen herzustellen.
*
* Syntax einer Zeile (hinter der letzen Info NUR Enter drücken,kein SEMIKOLON!):
* NAME;BAUZEIT;KOSTEN_ERZ;KOSTEN_KRISTALL;KOSTEN_DEUTERIUM;BESCHREIBUNG1;BESCHREIBUNG2;BESCHREIBUNG3
*
* Für die Benutzung und Veränderung sind keine Credits erforderlich. Viel Spaß damit !
*
*/

var techtreefile; //Handle für die Techtreedatei
string techfilename = "techtree.txt"; //Name der Datei in dem die Techinformationen gespeichert sind

var zaehler=1; //Zeilenzähler

// Deklaration der benötigten Strings
string techName;
string techKostenErz;
string techKostenKristall;
string techKostenDeuterium;
string techZeit;
string techBeschreibung;

function initTechtree(seperator) //setzt z.Z. nur das Trennungszeichen neu
{
str_cpy(delimit_str,seperator);
}

function setTechFilename(newname) //erlaubt das setzen eines neuen Dateinamens für die Technologiedatei
{
str_cpy(techfilename,newname);
}

function getTechName(Stelle) //holt den Namen der Technologie
{
Stelle = 1+((Stelle-1)*8);
techtreefile = file_open_read(techFileName);
while(zaehler<=Stelle)
{
file_str_read(techtreefile, techName);
zaehler+=1;
}
file_close(techtreefile);
zaehler=1;
return(techName);
}

function getTechZeit(Stelle) //holt die Bau-/Forschungszeit der Technologie
{
Stelle = 2+((Stelle-1)*8);
techtreefile = file_open_read(techFileName);
while(zaehler<=Stelle)
{
file_str_read(techtreefile, techZeit);
zaehler+=1;
}
file_close(techtreefile);
zaehler=1;
return(techZeit);
}

// Die folgenden 3 Funktionen holen den jeweiligen Rohstoffbedarf (Erz,Kristall,Deuterium) zum Bauen/Forschen

function getTechKostenErz(Stelle)
{
Stelle = 3+((Stelle-1)*8);
techtreefile = file_open_read(techFileName);
while(zaehler<=Stelle)
{
file_str_read(techtreefile, techKostenErz);
zaehler+=1;
}
file_close(techtreefile);
zaehler=1;
return(techKostenErz);
}

function getTechKostenKristall(Stelle)
{

Stelle = 4+((Stelle-1)*8);
techtreefile = file_open_read(techFileName);
while(zaehler<=Stelle)
{
file_str_read(techtreefile, techKostenKristall);
zaehler+=1;
}
file_close(techtreefile);
zaehler=1;
return(techKostenKristall);
}

function getTechKostenDeuterium(Stelle)
{
Stelle = 5+((Stelle-1)*8);
techtreefile = file_open_read(techFileName);
while(zaehler<=Stelle)
{
file_str_read(techtreefile, techKostenDeuterium);
zaehler+=1;
}
file_close(techtreefile);
zaehler=1;
return(techKostenDeuterium);
}

// Holt die jeweilige Zeile (von bis zu 3), die Informationen über die Technologie enthalten kann.

function getTechBeschreibung(Stelle,Zeile)
{
if((Zeile>=4)||(Zeile<=0))
{return ("");
}
else
{
Stelle = (Zeile+5)+((Stelle-1)*8);
techtreefile = file_open_read(techFileName);
while(zaehler<=Stelle)
{
file_str_read(techtreefile, techBeschreibung);
zaehler+=1;
}
file_close(techtreefile);
zaehler=1;
return(techBeschreibung);
}
}




In einer späteren Version werden auch Funktionen kommen, mit denen man direkt überprüfen kann ob man
eine bestimmte Technologie erforschen kann oder nicht. Also sozusagen eine Prüfung der Abhängigkeiten
zwischen den Technologien.

Falls es eine neue Version gibt, wird die selbstverständlich auch contributed.

Für C&C bin ich immer offen

Last edited by Aron; 11/20/05 21:28.

Hast du von Durchblick keine Spur,zeichne eine Hilfsfigur!
Re: einfacher Techbaum [Re: Aron] #59378
11/20/05 20:20
11/20/05 20:20
Joined: Dec 2001
Posts: 2,172
Portugal - Brazil
XNASorcerer Offline
Expert
XNASorcerer  Offline
Expert

Joined: Dec 2001
Posts: 2,172
Portugal - Brazil
What?

Re: einfacher Techbaum [Re: XNASorcerer] #59379
11/20/05 20:41
11/20/05 20:41
Joined: Jun 2002
Posts: 40
Berlin - Deutschland
Aron Offline OP
Newbie
Aron  Offline OP
Newbie

Joined: Jun 2002
Posts: 40
Berlin - Deutschland
Ok ^^ a brief description in english.

I am working on a modular techtree-script. This up there is the most recent version,which you can use to create a in-game-help-system.
In a later version there will be functions for comparing if you are already able to research a specific tech or if you still need a
pre-tech.

I will translate the Comments for our english users within the next week, so you won't be locked out ^^.

Hope my english isn't as bad as is think.

Re: einfacher Techbaum [Re: Aron] #59380
11/20/05 21:01
11/20/05 21:01
Joined: Jul 2005
Posts: 421
Germany
DoC Offline
Senior Member
DoC  Offline
Senior Member

Joined: Jul 2005
Posts: 421
Germany
ziemlich cool muss ich mal testen... allgemein wäre mal ein tutorial für ein RTS cool... es gab ja mal was von realspawn... aber da kam nix mehr nach und wasteland is immo das coolste was man hier gesehn hat ich will sowas auch mal selber machen ala C&C... nur übersteigt das meine fähigkeiten bin mehr der für RPG codes macht ^^...

Re: einfacher Techbaum [Re: DoC] #59381
11/20/05 21:18
11/20/05 21:18
Joined: Jun 2002
Posts: 40
Berlin - Deutschland
Aron Offline OP
Newbie
Aron  Offline OP
Newbie

Joined: Jun 2002
Posts: 40
Berlin - Deutschland
Naja wenn die Zeit gekommen ist, werde ich mein Projekt auch vorstellen. Es gibt zwar schon Screens, aber da ist noch nichts
weltbewegendes drauf, deswegen warte ich noch. Wenn es irgendwo Probleme gibt, bitte melden, dass ich die schnellstmöglich
beseitigen kann.

Re: einfacher Techbaum [Re: Aron] #59382
11/20/05 22:19
11/20/05 22:19
Joined: Dec 2001
Posts: 2,172
Portugal - Brazil
XNASorcerer Offline
Expert
XNASorcerer  Offline
Expert

Joined: Dec 2001
Posts: 2,172
Portugal - Brazil
Thanks

Re: einfacher Techbaum [Re: XNASorcerer] #59383
11/20/05 23:36
11/20/05 23:36
Joined: Aug 2005
Posts: 1,185
Ukraine
Lion_Ts Offline
Serious User
Lion_Ts  Offline
Serious User

Joined: Aug 2005
Posts: 1,185
Ukraine
Pretty nice for RTS, I think.
Translate, please. And Thank you, Aron.

Re: einfacher Techbaum [Re: Lion_Ts] #59384
11/21/05 15:18
11/21/05 15:18
Joined: Jun 2002
Posts: 40
Berlin - Deutschland
Aron Offline OP
Newbie
Aron  Offline OP
Newbie

Joined: Jun 2002
Posts: 40
Berlin - Deutschland
I will translate it this evening,so the english users can use this handy script for their projects too.
The next step (checking if a research is possible->all conditions for research are met)is already planned and will be added within this week I think.

Re: einfacher Techbaum [Re: Aron] #59385
11/21/05 15:21
11/21/05 15:21
Joined: Apr 2004
Posts: 320
TheGameMaker Offline
Senior Member
TheGameMaker  Offline
Senior Member

Joined: Apr 2004
Posts: 320
Kristall, Erz und Deuterium???
Ist da zufällig Ogame spieler???
Danke nützlich!

Re: einfacher Techbaum [Re: TheGameMaker] #59386
11/21/05 15:30
11/21/05 15:30
Joined: Jun 2002
Posts: 40
Berlin - Deutschland
Aron Offline OP
Newbie
Aron  Offline OP
Newbie

Joined: Jun 2002
Posts: 40
Berlin - Deutschland
@TheGameMaker:
Die Spielidee war ursprünglich von OGame (eher von SpacePioneers) abgeguckt, hat sich aber weiterentwickelt zu was eigenem.
Dass ich nu bei den Rohstoffen geblieben bin ist Zufall. Hatte auch ursprünglich noch Bevölkerung als Ressource eingebaut.
Ich mag OGame nicht ^^

Page 1 of 2 1 2

Moderated by  adoado, checkbutton, mk_1, Perro 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1