Can A Windows Game Be Ported?


Joined
Mar 19, 2006
Messages
137
Age
45
Website
Visit site
I created a final fantasy type video game. It is a windows game but I was just curious if it could be ported. I realize you have to have libraries, I don't code at all,as I don't know how, except making this game. Is It possible to port this game to the gp2x?
 
alterdimension said:
I created a final fantasy type video game. It is a windows game but I was just curious if it could be ported. I realize you have to have libraries, I don't code at all,as I don't know how, except making this game. Is It possible to port this game to the gp2x?
NEED MOAR DETAIL

Seriously, did you write it with code or make it with something like Game Maker? Is it 3D? Does it run well on crappy computers? Can you give us the source code? Does it use windows-specific things like directX?
 
Last edited by a moderator:
I wrote the code. The classification of the code is called rpg. You can go to www.toolkitzone.com. The only thing that it really needs is visual basic 6.0 which is included in the game. I wrote the game. It is a game that is not 3d but uses what are called boards, that his how you make the game graphics. Its a fun game but what I really want is to port it to gp2x. I don't have any practical code like c++ or any other codes. Just
the rpg language. I want to tell everyone that this is not a rom it is
a game.


Also, The game is so big that there are source codes all over the place. Not just one. Also, There are different code for different functions in my game.
 
You used a game creator, so no you can't port your game. It's not your game that needs porting it's the game creator engine that does. If that could be ported then any games that are written with it should work.
 
You used RPG Toolkit, that's a game creator. If you'd written the game from scratch, you could probably port it yourself (depending on library availability), but since you used RPG Toolkit, you'd need to port that, and then run your game on "top" of it. Apparently it's open source, but I couldn't find the source code on the site.
 
fishybawb said:
You used RPG Toolkit, that's a game creator. If you'd written the game from scratch, you could probably port it yourself (depending on library availability), but since you used RPG Toolkit, you'd need to port that, and then run your game on "top" of it. Apparently it's open source, but I couldn't find the source code on the site.

Yes, but could you port from an existing game? I have made a game, I have a source code for the game. I have what is known as a "start program" Which controls the game. If you screw with the start program, the game will not function.
 
Last edited by a moderator:
alterdimension said:
Yes, but could you port from an existing game? I have made a game, I have a source code for the game. I have what is known as a "start program" Which controls the game. If you screw with the start program, the game will not function.
Do you have the source code to the "start program"?
 
Last edited by a moderator:
Here is the system program


**************************************
*System.prg *
*RPG Toolkit Development System, 2.0 *
*System Library. *
*Copyright 1999 By Christopher B. *
*Matthews *
*****************************************
* This library gives access to extended *
*RPGCode commands. *
*****************************************


*****************************
* #Pause() *
*****************************
* Waits for a key press. *
*Ignores arrow keys. *
*****************************
#Method Pause()
{
#pause_done!=0
#While(pause_done!==0)
{
#Wait(pause_wait$)
#If(pause_wait$~="UP")
{
#If(pause_wait$~="DOWN")
{
#If(pause_wait$~="LEFT")
{
#If(pause_wait$~="RIGHT")
{
#pause_done!=1
}
}
}
}
}
#Kill(pause_done!)
#Kill(pause_wait$)
}


**********************************
* Causes a graphic to move from
* x1,y1 to x2,y2
* mgFilename$ is the filename of the graphic.
* mgspeed! is the speed (1 is fast, 0.5 is slower)
**********************************
#method moveGraphic(mgFilename$, mgx1!, mgy1!, mgx2!, mgy2!, mgspeed!)
{
*calculate delta y and delta x...
#mgDX! = mgx2! - mgx1!
#mgDY! = mgy2! - mgy1!
*calculate slope...
#mgm! = mgDY! / mgDX!
*calculate b...
#mgb! = mgm! * mgx1!
#mgb! = mgy1! - mgb!
*#mwin("<mgx1!>,<mgy1!> <mgx2!>,<mgy2!>")
*
*now we have y = mx + b
#if(mgx1!<=mgx2!)
{
#for (mgc! = mgx1!; mgc! <= mgx2!; mgc! = mgc!+mgspeed!)
{
#mgxx! = mgc!
#mgyy! = mgm! * mgxx! + mgb!
#scan(mgxx!,mgyy!,0)
#put(mgxx!, mgyy!, mgFilename$)
*#delay(0.1)
#mem(mgxx!, mgyy!, 0)
}
}
#if(mgx1!>mgx2!)
{
#for (mgc! = mgx1!; mgc! > mgx2!; mgc! = mgc!-mgspeed!)
{
#mgxx! = mgc!
#mgyy! = mgm! * mgxx! + mgb!
#scan(mgxx!,mgyy!,0)
#put(mgxx!, mgyy!, mgFilename$)
*#delay(0.1)
#mem(mgxx!, mgyy!, 0)
}
}
#kill(mgDX!)
#kill(mgDY!)
#kill(mgm!)
#kill(mgb!)
#kill(mgc!)
#kill(mgxx!)
#kill(mgyy!)
#kill(mgFilename$)
#kill(mgx1!)
#kill(mgy1!)
#kill(mgx2!)
#kill(mgy2!)
#kill(mgspeed!)
}


*************************************************
* #NumSetElement(name$, elementnum!, value!) *
*************************************************
* Sets a specific element in a numerical array. *
*************************************************
#Method NumSetElement(sE_Name$, sE_Element!, sE_Value!)
{
#castLit(sE_Element!, sE_LitEle$)
#castLit(sE_Value!, sE_LitVal$)
#sE_Name$=se_Name$+"["+sE_LitEle$+"]!"
#sE_com$= "#" +se_Name$+ "="+ se_LitVal$
#RPGCode(se_com$)
#Kill(sE_Name$)
#Kill(sE_Element!)
#Kill(sE_Value!)
#Kill(sE_com$)
#Kill(sE_LitEle$)
#Kill(sE_LitVal$)
}

*************************************************
* #LitSetElement(name$, elementnum!, value$) *
*************************************************
* Sets a specific element in a literal array. *
*************************************************
#method LitSetElement(sE_Name$, sE_Element!, sE_Value$)
{
#castLit(sE_Element!, sE_LitEle$)
#sE_Name$=se_Name$+"["+sE_LitEle$+"]$"
#sE_com$= "#" +se_Name$+ "="+ sE_Value$
#RPGCode(sE_com$)
#Kill(sE_Name$)
#Kill(sE_Element!)
#Kill(sE_Value$)
#Kill(sE_com$)
#Kill(sE_LitEle$)
}

*************************************************
* #NumGetElement(name$, elementnum!, dest!) *
*************************************************
* Get a specific element in a numerical array. *
*************************************************
#method NumGetElement(gE_Name$,gE_Element!,gE_dest!)
{
#castLit(gE_Element!, gE_LitEle$)
#gE_Name$=ge_Name$+"["+gE_LitEle$+"]!"
#gE_com$= "#gE_dest!" + "="+ gE_Name$
#RPGCode(gE_com$)
#ReturnMethod(gE_dest!)
#Kill(gE_Name$)
#Kill(gE_Element!)
#Kill(gE_dest!)
#Kill(gE_com$)
#Kill(gE_LitEle$)
}

*************************************************
* #LitGetElement(name$, elementnum!, dest$) *
*************************************************
* Get a specific element in a literal array. *
*************************************************
#Method LitGetElement(gE_Name$, gE_Element!, gE_dest$)
{
#castLit(gE_Element!, gE_LitEle$)
#gE_Name$=ge_Name$+"["+gE_LitEle$+"]$"
#gE_com$= "#gE_dest$" + "="+ gE_Name$
#RPGCode(gE_com$)
#ReturnMethod(gE_dest$)
#Kill(gE_Name$)
#Kill(gE_Element!)
#Kill(gE_dest$)
#Kill(gE_com$)
#Kill(gE_LitEle$)
}





alterdimension said:
Here is the system program
**************************************
*System.prg *
*RPG Toolkit Development System, 2.0 *
*System Library. *
*Copyright 1999 By Christopher B. *
*Matthews *
*****************************************
* This library gives access to extended *
*RPGCode commands. *
*****************************************


*****************************
* #Pause() *
*****************************
* Waits for a key press. *
*Ignores arrow keys. *
*****************************
#Method Pause()
{
#pause_done!=0
#While(pause_done!==0)
{
#Wait(pause_wait$)
#If(pause_wait$~="UP")
{
#If(pause_wait$~="DOWN")
{
#If(pause_wait$~="LEFT")
{
#If(pause_wait$~="RIGHT")
{
#pause_done!=1
}
}
}
}
}
#Kill(pause_done!)
#Kill(pause_wait$)
}


**********************************
* Causes a graphic to move from
* x1,y1 to x2,y2
* mgFilename$ is the filename of the graphic.
* mgspeed! is the speed (1 is fast, 0.5 is slower)
**********************************
#method moveGraphic(mgFilename$, mgx1!, mgy1!, mgx2!, mgy2!, mgspeed!)
{
*calculate delta y and delta x...
#mgDX! = mgx2! - mgx1!
#mgDY! = mgy2! - mgy1!
*calculate slope...
#mgm! = mgDY! / mgDX!
*calculate b...
#mgb! = mgm! * mgx1!
#mgb! = mgy1! - mgb!
*#mwin("<mgx1!>,<mgy1!> <mgx2!>,<mgy2!>")
*
*now we have y = mx + b
#if(mgx1!<=mgx2!)
{
#for (mgc! = mgx1!; mgc! <= mgx2!; mgc! = mgc!+mgspeed!)
{
#mgxx! = mgc!
#mgyy! = mgm! * mgxx! + mgb!
#scan(mgxx!,mgyy!,0)
#put(mgxx!, mgyy!, mgFilename$)
*#delay(0.1)
#mem(mgxx!, mgyy!, 0)
}
}
#if(mgx1!>mgx2!)
{
#for (mgc! = mgx1!; mgc! > mgx2!; mgc! = mgc!-mgspeed!)
{
#mgxx! = mgc!
#mgyy! = mgm! * mgxx! + mgb!
#scan(mgxx!,mgyy!,0)
#put(mgxx!, mgyy!, mgFilename$)
*#delay(0.1)
#mem(mgxx!, mgyy!, 0)
}
}
#kill(mgDX!)
#kill(mgDY!)
#kill(mgm!)
#kill(mgb!)
#kill(mgc!)
#kill(mgxx!)
#kill(mgyy!)
#kill(mgFilename$)
#kill(mgx1!)
#kill(mgy1!)
#kill(mgx2!)
#kill(mgy2!)
#kill(mgspeed!)
}


*************************************************
* #NumSetElement(name$, elementnum!, value!) *
*************************************************
* Sets a specific element in a numerical array. *
*************************************************
#Method NumSetElement(sE_Name$, sE_Element!, sE_Value!)
{
#castLit(sE_Element!, sE_LitEle$)
#castLit(sE_Value!, sE_LitVal$)
#sE_Name$=se_Name$+"["+sE_LitEle$+"]!"
#sE_com$= "#" +se_Name$+ "="+ se_LitVal$
#RPGCode(se_com$)
#Kill(sE_Name$)
#Kill(sE_Element!)
#Kill(sE_Value!)
#Kill(sE_com$)
#Kill(sE_LitEle$)
#Kill(sE_LitVal$)
}

*************************************************
* #LitSetElement(name$, elementnum!, value$) *
*************************************************
* Sets a specific element in a literal array. *
*************************************************
#method LitSetElement(sE_Name$, sE_Element!, sE_Value$)
{
#castLit(sE_Element!, sE_LitEle$)
#sE_Name$=se_Name$+"["+sE_LitEle$+"]$"
#sE_com$= "#" +se_Name$+ "="+ sE_Value$
#RPGCode(sE_com$)
#Kill(sE_Name$)
#Kill(sE_Element!)
#Kill(sE_Value$)
#Kill(sE_com$)
#Kill(sE_LitEle$)
}

*************************************************
* #NumGetElement(name$, elementnum!, dest!) *
*************************************************
* Get a specific element in a numerical array. *
*************************************************
#method NumGetElement(gE_Name$,gE_Element!,gE_dest!)
{
#castLit(gE_Element!, gE_LitEle$)
#gE_Name$=ge_Name$+"["+gE_LitEle$+"]!"
#gE_com$= "#gE_dest!" + "="+ gE_Name$
#RPGCode(gE_com$)
#ReturnMethod(gE_dest!)
#Kill(gE_Name$)
#Kill(gE_Element!)
#Kill(gE_dest!)
#Kill(gE_com$)
#Kill(gE_LitEle$)
}

*************************************************
* #LitGetElement(name$, elementnum!, dest$) *
*************************************************
* Get a specific element in a literal array. *
*************************************************
#Method LitGetElement(gE_Name$, gE_Element!, gE_dest$)
{
#castLit(gE_Element!, gE_LitEle$)
#gE_Name$=ge_Name$+"["+gE_LitEle$+"]$"
#gE_com$= "#gE_dest$" + "="+ gE_Name$
#RPGCode(gE_com$)
#ReturnMethod(gE_dest$)
#Kill(gE_Name$)
#Kill(gE_Element!)
#Kill(gE_dest$)
#Kill(gE_com$)
#Kill(gE_LitEle$)
}




alterdimension said:
Here is the system program
**************************************
*System.prg *
*RPG Toolkit Development System, 2.0 *
*System Library. *
*Copyright 1999 By Christopher B. *
*Matthews *
*****************************************
* This library gives access to extended *
*RPGCode commands. *
*****************************************


*****************************
* #Pause() *
*****************************
* Waits for a key press. *
*Ignores arrow keys. *
*****************************
#Method Pause()
{
#pause_done!=0
#While(pause_done!==0)
{
#Wait(pause_wait$)
#If(pause_wait$~="UP")
{
#If(pause_wait$~="DOWN")
{
#If(pause_wait$~="LEFT")
{
#If(pause_wait$~="RIGHT")
{
#pause_done!=1
}
}
}
}
}
#Kill(pause_done!)
#Kill(pause_wait$)
}


**********************************
* Causes a graphic to move from
* x1,y1 to x2,y2
* mgFilename$ is the filename of the graphic.
* mgspeed! is the speed (1 is fast, 0.5 is slower)
**********************************
#method moveGraphic(mgFilename$, mgx1!, mgy1!, mgx2!, mgy2!, mgspeed!)
{
*calculate delta y and delta x...
#mgDX! = mgx2! - mgx1!
#mgDY! = mgy2! - mgy1!
*calculate slope...
#mgm! = mgDY! / mgDX!
*calculate b...
#mgb! = mgm! * mgx1!
#mgb! = mgy1! - mgb!
*#mwin("<mgx1!>,<mgy1!> <mgx2!>,<mgy2!>")
*
*now we have y = mx + b
#if(mgx1!<=mgx2!)
{
#for (mgc! = mgx1!; mgc! <= mgx2!; mgc! = mgc!+mgspeed!)
{
#mgxx! = mgc!
#mgyy! = mgm! * mgxx! + mgb!
#scan(mgxx!,mgyy!,0)
#put(mgxx!, mgyy!, mgFilename$)
*#delay(0.1)
#mem(mgxx!, mgyy!, 0)
}
}
#if(mgx1!>mgx2!)
{
#for (mgc! = mgx1!; mgc! > mgx2!; mgc! = mgc!-mgspeed!)
{
#mgxx! = mgc!
#mgyy! = mgm! * mgxx! + mgb!
#scan(mgxx!,mgyy!,0)
#put(mgxx!, mgyy!, mgFilename$)
*#delay(0.1)
#mem(mgxx!, mgyy!, 0)
}
}
#kill(mgDX!)
#kill(mgDY!)
#kill(mgm!)
#kill(mgb!)
#kill(mgc!)
#kill(mgxx!)
#kill(mgyy!)
#kill(mgFilename$)
#kill(mgx1!)
#kill(mgy1!)
#kill(mgx2!)
#kill(mgy2!)
#kill(mgspeed!)
}


*************************************************
* #NumSetElement(name$, elementnum!, value!) *
*************************************************
* Sets a specific element in a numerical array. *
*************************************************
#Method NumSetElement(sE_Name$, sE_Element!, sE_Value!)
{
#castLit(sE_Element!, sE_LitEle$)
#castLit(sE_Value!, sE_LitVal$)
#sE_Name$=se_Name$+"["+sE_LitEle$+"]!"
#sE_com$= "#" +se_Name$+ "="+ se_LitVal$
#RPGCode(se_com$)
#Kill(sE_Name$)
#Kill(sE_Element!)
#Kill(sE_Value!)
#Kill(sE_com$)
#Kill(sE_LitEle$)
#Kill(sE_LitVal$)
}

*************************************************
* #LitSetElement(name$, elementnum!, value$) *
*************************************************
* Sets a specific element in a literal array. *
*************************************************
#method LitSetElement(sE_Name$, sE_Element!, sE_Value$)
{
#castLit(sE_Element!, sE_LitEle$)
#sE_Name$=se_Name$+"["+sE_LitEle$+"]$"
#sE_com$= "#" +se_Name$+ "="+ sE_Value$
#RPGCode(sE_com$)
#Kill(sE_Name$)
#Kill(sE_Element!)
#Kill(sE_Value$)
#Kill(sE_com$)
#Kill(sE_LitEle$)
}

*************************************************
* #NumGetElement(name$, elementnum!, dest!) *
*************************************************
* Get a specific element in a numerical array. *
*************************************************
#method NumGetElement(gE_Name$,gE_Element!,gE_dest!)
{
#castLit(gE_Element!, gE_LitEle$)
#gE_Name$=ge_Name$+"["+gE_LitEle$+"]!"
#gE_com$= "#gE_dest!" + "="+ gE_Name$
#RPGCode(gE_com$)
#ReturnMethod(gE_dest!)
#Kill(gE_Name$)
#Kill(gE_Element!)
#Kill(gE_dest!)
#Kill(gE_com$)
#Kill(gE_LitEle$)
}

*************************************************
* #LitGetElement(name$, elementnum!, dest$) *
*************************************************
* Get a specific element in a literal array. *
*************************************************
#Method LitGetElement(gE_Name$, gE_Element!, gE_dest$)
{
#castLit(gE_Element!, gE_LitEle$)
#gE_Name$=ge_Name$+"["+gE_LitEle$+"]$"
#gE_com$= "#gE_dest$" + "="+ gE_Name$
#RPGCode(gE_com$)
#ReturnMethod(gE_dest$)
#Kill(gE_Name$)
#Kill(gE_Element!)
#Kill(gE_dest$)
#Kill(gE_com$)
#Kill(gE_LitEle$)
}





alterdimension said:
Here is the system program
**************************************
*System.prg *
*RPG Toolkit Development System, 2.0 *
*System Library. *
*Copyright 1999 By Christopher B. *
*Matthews *
*****************************************
* This library gives access to extended *
*RPGCode commands. *
*****************************************


*****************************
* #Pause() *
*****************************
* Waits for a key press. *
*Ignores arrow keys. *
*****************************
#Method Pause()
{
#pause_done!=0
#While(pause_done!==0)
{
#Wait(pause_wait$)
#If(pause_wait$~="UP")
{
#If(pause_wait$~="DOWN")
{
#If(pause_wait$~="LEFT")
{
#If(pause_wait$~="RIGHT")
{
#pause_done!=1
}
}
}
}
}
#Kill(pause_done!)
#Kill(pause_wait$)
}


**********************************
* Causes a graphic to move from
* x1,y1 to x2,y2
* mgFilename$ is the filename of the graphic.
* mgspeed! is the speed (1 is fast, 0.5 is slower)
**********************************
#method moveGraphic(mgFilename$, mgx1!, mgy1!, mgx2!, mgy2!, mgspeed!)
{
*calculate delta y and delta x...
#mgDX! = mgx2! - mgx1!
#mgDY! = mgy2! - mgy1!
*calculate slope...
#mgm! = mgDY! / mgDX!
*calculate b...
#mgb! = mgm! * mgx1!
#mgb! = mgy1! - mgb!
*#mwin("<mgx1!>,<mgy1!> <mgx2!>,<mgy2!>")
*
*now we have y = mx + b
#if(mgx1!<=mgx2!)
{
#for (mgc! = mgx1!; mgc! <= mgx2!; mgc! = mgc!+mgspeed!)
{
#mgxx! = mgc!
#mgyy! = mgm! * mgxx! + mgb!
#scan(mgxx!,mgyy!,0)
#put(mgxx!, mgyy!, mgFilename$)
*#delay(0.1)
#mem(mgxx!, mgyy!, 0)
}
}
#if(mgx1!>mgx2!)
{
#for (mgc! = mgx1!; mgc! > mgx2!; mgc! = mgc!-mgspeed!)
{
#mgxx! = mgc!
#mgyy! = mgm! * mgxx! + mgb!
#scan(mgxx!,mgyy!,0)
#put(mgxx!, mgyy!, mgFilename$)
*#delay(0.1)
#mem(mgxx!, mgyy!, 0)
}
}
#kill(mgDX!)
#kill(mgDY!)
#kill(mgm!)
#kill(mgb!)
#kill(mgc!)
#kill(mgxx!)
#kill(mgyy!)
#kill(mgFilename$)
#kill(mgx1!)
#kill(mgy1!)
#kill(mgx2!)
#kill(mgy2!)
#kill(mgspeed!)
}


*************************************************
* #NumSetElement(name$, elementnum!, value!) *
*************************************************
* Sets a specific element in a numerical array. *
*************************************************
#Method NumSetElement(sE_Name$, sE_Element!, sE_Value!)
{
#castLit(sE_Element!, sE_LitEle$)
#castLit(sE_Value!, sE_LitVal$)
#sE_Name$=se_Name$+"["+sE_LitEle$+"]!"
#sE_com$= "#" +se_Name$+ "="+ se_LitVal$
#RPGCode(se_com$)
#Kill(sE_Name$)
#Kill(sE_Element!)
#Kill(sE_Value!)
#Kill(sE_com$)
#Kill(sE_LitEle$)
#Kill(sE_LitVal$)
}

*************************************************
* #LitSetElement(name$, elementnum!, value$) *
*************************************************
* Sets a specific element in a literal array. *
*************************************************
#method LitSetElement(sE_Name$, sE_Element!, sE_Value$)
{
#castLit(sE_Element!, sE_LitEle$)
#sE_Name$=se_Name$+"["+sE_LitEle$+"]$"
#sE_com$= "#" +se_Name$+ "="+ sE_Value$
#RPGCode(sE_com$)
#Kill(sE_Name$)
#Kill(sE_Element!)
#Kill(sE_Value$)
#Kill(sE_com$)
#Kill(sE_LitEle$)
}

*************************************************
* #NumGetElement(name$, elementnum!, dest!) *
*************************************************
* Get a specific element in a numerical array. *
*************************************************
#method NumGetElement(gE_Name$,gE_Element!,gE_dest!)
{
#castLit(gE_Element!, gE_LitEle$)
#gE_Name$=ge_Name$+"["+gE_LitEle$+"]!"
#gE_com$= "#gE_dest!" + "="+ gE_Name$
#RPGCode(gE_com$)
#ReturnMethod(gE_dest!)
#Kill(gE_Name$)
#Kill(gE_Element!)
#Kill(gE_dest!)
#Kill(gE_com$)
#Kill(gE_LitEle$)
}

*************************************************
* #LitGetElement(name$, elementnum!, dest$) *
*************************************************
* Get a specific element in a literal array. *
*************************************************
#Method LitGetElement(gE_Name$, gE_Element!, gE_dest$)
{
#castLit(gE_Element!, gE_LitEle$)
#gE_Name$=ge_Name$+"["+gE_LitEle$+"]$"
#gE_com$= "#gE_dest$" + "="+ gE_Name$
#RPGCode(gE_com$)
#ReturnMethod(gE_dest$)
#Kill(gE_Name$)
#Kill(gE_Element!)
#Kill(gE_dest$)
#Kill(gE_com$)
#Kill(gE_LitEle$)
}





here is the start program




*******************************************************
**
** Basic Startup Program.
** ----------------------
**
** Look for all lines commented as TBD (to be done)
** to see what you should change.
**
*******************************************************

*******************************************************
* Some initial settings. Maybe you want to change these...
#Fontsize(12)
#itemwalkspeed("slow")
#walkspeed("slow")
#mediaplay("vip - title2.mid")
#characterspeed(2)
#bold("on")
*******************************************************

#BorderColor(0,0,0)
#Fade(1)

*******************************************************
* TBD: Play a title screen file here...
* #MidiPlay("mysong.mid")
*******************************************************

#Clear

*******************************************************
* Draws the title screen...
#drawtitle()
*******************************************************

*******************************************************
* Waits for the user to choose something...
#done!=0
#While(done!=0)
{
#MouseClick(x!,y!) *waits for a mouse click and returns x y coords
#CheckButton(x!,y!,opt!) *checks if we clicked a button
#if (opt!=0)
{
*'new game' clicked
#Color(15)
* TBD: You might want to change the message window graphic...
#WinGraphic("mwin.jpg") *Message window graphic
#Fontsize(12)
#done!=1
#selectGraphics()
#history()
#end
}
#if (opt!=1)
{
*'load game' clicked
#dirsav(dest$)
#if(dest$~="CANCEL")
{
#load(dest$)
#done!=1
#end
}
}
#if (opt!=2) {#dos}
}
#end

*******************************************************
* This method draws the title screen...
*******************************************************
#method drawtitle()
{
#Fade(1)
#Clear
* TBD: Set some graphic for your title screen graphic.
#Bitmap("title.gif")

#WinGraphic("mwin.jpg")

* TBD: Maybe you want to change these buttons...
#setbutton("new.jpg", 0,123,45,125,30)
#setbutton("load.jpg",1,248,45,125,30)
#setbutton("quit.jpg",2,373,45,125,30)
}

* TBD: Put a stroy here...
#method history()
{
*Main story
#MWin("Long, long ago, the land of Hylanka was guarded by")
#MWin("a legendary jewel. One day, things changed...")
#Wait(a$)
}

#method selectGraphics()
{
#bold("off")
#clear
#fontsize(25)
#Italics("on")
#Text(1,1,"Graphics Mode Selection")
#Italics("off")
#ColorRGB(255, 0, 0)
#DrawLine(2,30,600,30)
#ColorRGB(150, 0, 0)
#DrawLine(3,31,599,31)
#ColorRGB(100, 0, 0)
#DrawLine(4,32,598,32)
#fontsize(16)
#ColorRGB(255,255,255)
#Text(3,5,"The RPG Toolkit can draw graphics in different ways.")
#Text(3,6,"Please select the mode you want to use:")
#fontsize(20)
#Bold("on")
#text(7,8,"1 - Parallaxing off (fast!)")
#text(7,9,"2 - Parallaxing on (slower, but with parallax effects)")
#bold("off")
#fontsize(14)
#text(20,15,"Press 1 or 2")
#done! = 0
#while(done! = 0)
{
#wait(a$)
#if(a$="1")
{
#parallaxMode! = 2
#done! = 1
}
#if(a$="2")
{
#parallaxMode! = 1
#done! = 1
}
}
#parallax(parallaxMode!)
#bold("on")
#fontsize(20)
}
 
Last edited by a moderator:
You only have the source code to a game that runs in a particular engine. You need to port the engine, not the game. Think of is as a more advanced type of level editor - what you have written is like creating new levels for a game. To run those levels on a different machine you would need to port the software, not the individual levels (they can't work without something to run them on).
 
woogal said:
You only have the source code to a game that runs in a particular engine. You need to port the engine, not the game. Think of is as a more advanced type of level editor - what you have written is like creating new levels for a game. To run those levels on a different machine you would need to port the software, not the individual levels (they can't work without something to run them on).


I have the source code. How can I get it to you?
 
Last edited by a moderator:
alterdimension said:
woogal said:
You only have the source code to a game that runs in a particular engine. You need to port the engine, not the game. Think of is as a more advanced type of level editor - what you have written is like creating new levels for a game. To run those levels on a different machine you would need to port the software, not the individual levels (they can't work without something to run them on).
I have the source code. How can I get it to you?

Everyone's been very (!) patient with you, but the point is that you don't yet know how to write code, so you can't port your game. The RPGtoolkit isn't a real programming language, it's just a game creation utility.

Once you teach yourself how to code you could rewrite your game, recreating many if not all of your major concepts. Look into Fenix, it seems to be a good introductory language. I'm trying to learn it myself.
 
Last edited by a moderator:
QUOTE
The Toolkit 3.x requires several key components in order to run, but after these there are no real minimum system requirements—technically the TK will run on very low-end machines but with highly diminished performance. Hence we quote a set a of recommended specifications that are by no means minimum requirements; you may get a good performance from lesser machines.
Required Components

* Windows 95, 98, 98SE, ME, 2000, XP
* DirectX 8.0 or above
* 32MB RAM
* ~30MB hard disk space
* Windows Media Player 7, 8, or 9 Series


:ph34r:
 
I would love to see a port of the classic windows 3.1 game, Castle of the Winds. Unfortunately, the author has never released the source code, although he made the game freeware in 1998.
 
scientist said:
I would love to see a port of the classic windows 3.1 game, Castle of the Winds. Unfortunately, the author has never released the source code, although he made the game freeware in 1998.
If you can find the author's email, you can ask him to release the source code, telling him the purpose was to port it to other consoles. If not, you seem to be out of luck. By the way, this post had nothing to do with the rest of the topic so in the future you should probably start a new topic.
 
Last edited by a moderator:
Critical_Impact said:
That or make a open source version of it called OpenCastle or something :p
yup, that seems like the best option to me as well. perhaps I'll take a stab at it - i havent touched C for years, but I still program every single day. I would rather start an Oregon Trail clone first though...

once my GP2X gets here (today) I'll get the SDK and whatever else I need.

QUOTE
By the way, this post had nothing to do with the rest of the topic so in the future you should probably start a new topic.


i figured i might as well hijack this thread, since it seemed to have been fruitless. in the future I will start anew ;)
 
Last edited by a moderator:
Castle of the Winds is based on a really simple engine (everything is made up from windows icons!), so I see no reason why the engine couln't be ported to the gp2x if we obtain the source code. I think that it would be a great way to continue a game that might otherwise get lost in time :) Now we just have to convince the author to release the source :p

I remember playing that game for hours when I was a kid!
 
Back
Top