Just a place to kind of pool some notes and such.

I've been weighing the decision to base the game on the homescreen instead of the graphscreen because if I were to do it on the graphscreen like on the 83+ line, it would take you forever to get across one map.

Beyond that, everything else should be pretty much a straight port, as the coding syntaxes seemingly vary very little.
Well, we could teach you C, and you could make it fast, amazing, and complete it pretty quickly as a "graphscreen" type of game. Alternatively, you could do what Sarah is doing, and go for a Casio BASIC homescreen-type game, also fast and pretty nifty.
Yeah, I wish the text command wasn't so slow :/
Well, I had initially started out thinking I could make it on the graphscreen. So the code doesn't go to waste, here is what I had to this point:


Code:
ClrGraph
0->Xmin
0->Ymin
216->Xmax
384->Ymax
Horizontal 0
Horizontal Ymax
Vertical 0
Vertical Xmax
1->W
225->A
25->B
While W=1
Text B,A,"A"
Getkey->K
If K
Then
Text B,A,"  " // 2 spaces
If End
IF K=47
Then
0->W
IfEnd
A-10((K=38 and A>5)-(K=27 and A<360->A
B-10((K=28 and B>5)-(K=37 and B<175->B
WhileEnd


Hopefully this doesn't bore anyone too badly :p I'll still give this some thought, might make use of it, or not. Would have to adjust how many pixels at a time a user would 'walk'.

Edit:

I'd also like to note that the code above isn't too horridly slow, either. I think it'd still be playable the speed that it displays. It takes longer to run the Vertical and Horizontal commands than it does to move the character around the screen.
I really should come back to this at some point.
An homescreen PRIZM remake would definitively be good, since it's the only fast thing in PRIZM BASIC and not only you can use colors for individual characters, but you also have access to some rather interesting characters.
Yeah, though I think I'll just leave it with the black border using characters, and simplify things. That was the beauty of that old game, it was simple, yet fun Smile

Also, how does one initiate lists in Prizm BASIC? I've went and forgot how to do so Neutral
tifreak8x wrote:
Yeah, though I think I'll just leave it with the black border using characters, and simplify things. That was the beauty of that old game, it was simple, yet fun Smile

Also, how does one initiate lists in Prizm BASIC? I've went and forgot how to do so Neutral
I'm afraid I don't remember how to do this, but exploring the Prizm wiki shows this example that should help.
Thanks for the info, I've found more information, posted it to a more appropriate thread. I've worked out the first batch of 'screens' for the map, now I need to move some code around so it sits in the proper spots of programs where it needs to be. (Copy and Paste make things SO nice on the Prizm)

Once I get it to clear the X's out of the sides that are passable, I'll make the actual game engine work. From there, it will be all about the battles.

Edit

I was able to confirm my idea will work in terms of opening the sides of the screen for borders. I'll probably go ahead and dump the rest of the screen data into that particular program and properly set it up to display the symbols for the various world objects.

I wish we had a good way of screenshotting things, looks like I'll be forced to take video with my camera when I want to show off my work. :/
As of right now, I've completed the inputting of all map data, pending any typos on my part, that should be done. It now properly generates the boundaries of the map and even is set up for segment bouncing. Oh yeah, and it's ready for me to add map interactions with items on the map Very Happy Yay me!



Yes, I know the fan is loud, sorry about that, not much I can do.

Otherwise, what do you think thus far? Smile

Edit:



Got the shifting between segments completed. On to the map interactions! Smile
Work progresses with the Village program. Inn and Tavern completed, working on armory now, which should only leave me the shop, which also shouldn't be too hard to get implemented and ready to function.

Edit:



We now have a fully working Village system in place, with Armory, Inn, and Shop all ready and waiting.

Next up on the list is making the menu system work, to access stats, save, etc.

Since this has all been done on the home screen so far, I'm not 100% sure how I wish to proceed with this, but I'm sure I'll come up with something!

What do you think of things so far?
Way too little activity on this topic, I think its really nice although I'm not sure what
"ARE YOU HERE TO SAVE US?
HAHAHAHAHA!
THAT WAS REALLY FUNNY!"
Means
I did notice it says Welcome to Our... or welcome to My... maybe you could show who is saying that or change it
Anyway, amazing work Very Happy
Well, it should be fairly obvious who is saying what. The towns folk, and the respective shop keepers, hence the our and my differences.

And the place you the player start at, you're known and not considered someone of importance.
ok cool Smile
Sadly, he's programming in a language I know nothing about, so I'd be of no help to him right now. Most of my programming on the calculators have all been in BASIC.
Getting ready to work on this for a little bit, realized it might be good to post how large the game is in its current form, give me a marker of sorts on the size of the programs as I get closer to the final version of things.

Name - Size

AOD - 496
ZCH - 112
ZGA - 392
ZME - 1108
ZPL - 68
ZSC - 2664
ZVI - 2200

Now to go make ZME bigger Very Happy


Update:

AOD - 496
ZCH - 112
ZGA - 420
ZME - 2000
ZPL - 68
ZSC - 2664
ZVI - 2200

In-game menu is 100% completed and fully integrated into the actual gaming engine. Next on the list is to finish up the events, followed by the battle engine.
I have 'finished' the events program (ZPL). Current size of the game:

AOD - 496
ZCH - 112
ZGA - 420
ZME - 2004
ZPL - 3440
ZSC - 2664
ZVI - 2200

Next up on the list is inputting 103 lines of enemy data. That's going to be fun. Neutral

I'm beginning to have my doubts about this project.
AOD - 496
ZBA - 32
ZEN - 2776
ZGA - 420
ZME - 2004
ZPL - 3440
ZSC - 2664
ZVI - 2200

Enemy data added, beginning work on battle system, which is the final leg of programming in this game, then testing.
In theory, the battle system is now set up to let players attack the enemy, they just cannot return attacks as of yet. Plus, the exp gain isn't programmed in, either.

Closing in on a beta release of the game, hopefully by the weekend. Hopefully the battle system has no errors in it, it's already over 2900 bytes in size, and I have a lot to add to it yet.

And I still need to update the gaming engine to use the enemy encounter and exiting from the battles properly.

AOD - 496
ZBA - 2856
ZEN - 2776
ZGA - 420
ZME - 2004
ZPL - 3440
ZSC - 2664
ZVI - 2200
Well, I've got the battle system coded in, bad news is it's giving me a syntax error and going to the end of the program.

This program is 5KB in size. It's going to take a while to scan through each line to make sure I didn't forget to close a quote, bracket or otherwise. At least I can save it as a txt on the calc and dump it to the computer to do it a little more efficiently.

Edit:


Code:
'ProgramMode:RUN
ClrText
Locate 1,1,"YOU ARE BATTLING"
Locate 1,2,Str 1
Locate 8,4,"FIGHT"
Locate 8,5,"RUN"
3->W:4->Z
While W=3
Locate 7,Z,"_=>_"
Getkey->K
If K>1:Then
Locate 7,Z," ":IfEnd
Z-1((K=28 And Z>4)-(K=37 And Z<5))->Z
If K=78 Or K=31:Then
If Z=5:Then
If List 1[13]=1:Then
Locate 1,7,"CANNOT ESCAPE BOSSESChar!"
While Getkey=0
WhileEnd
5->W:IfEnd
If List 1[13]=0:Then
RanInt#(1,6)->J
If J=1 Or J=3 Or J=5:Then
ClrText:Return:IfEnd

If J=2 Or J=4 Or J=6:Then
Locate 1,7,"CANNOT ESCAPEChar!"
While Getkey=0
WhileEnd
ClrText:5->W:IfEnd
If Z=4:Then
ClrText:3->W:IfEnd
IfEnd:WhileEnd

While W=3
4->Z
Locate 1,1,"YOU ARE BATTLING"
Locate 1,2,Str 1
Locate 8,4,"SWORD"
Locate 8,5,"MAGIC"
Locate 8,6,"ITEMS"
Locate 8,7,"STATS"
4->W
While W=4
Locate 7,Z,"_=>_"
Getkey->K
If K>1:Then
Locate 7,Z," ":IfEnd
Z-1((K=28 And Z>4)-(K=37 And Z<7))->Z
If K=78 And K=31:Then
If Z=7:Then
ClrText
Locate 1,1,"HP:     //"
Locate 5,1,List 2[1]
Locate 11,1,List 2[2]
Locate 1,2,"MP:     //"
Locate 5,2,List 2[3]
Locate 11,2,List 2[4]
Locate 1,3,"ATT:      DEF:"
Locate 5,3,List 2[5]
Locate 16,3,List 2[6]
Locate 1,4,"LEVEL:"
Locate 8,4,List 2[10]
Locate 1,5,"EXP:"
Locate 6,5,List 2[8]
Locate 1,6,"NEXT LEVEL:"
Locate 13,6,List 2[9]
While Getkey=0
WhileEnd
ClrText:3->W:0->Z:IfEnd
If Z=6:Then
ClrText:2->Z
Locate 1,1,"ITEMS:"
Locate 2,2,"POTIONS _@E778_"
Locate 2,3,"ETHERS _@E778_"
Locate 1,4,"CRYSTALS:"
Locate 13,4,List 2[20]
Locate 1,7,"[EXIT] TO EXIT"
While W=3
Locate 13,2,List 2[11]
Locate 13,3,List 2[12]
Locate 1,Z,"_=>_"
Getkey->K
If K>1:Then
Locate 1,Z," "
IfEnd
Z-1((K=28 And Z>2)-(K=37 And Z<3))->Z
If K=47:Then
3->W:ClrText:0->Z
IfEnd
If K=78 Or K=31:Then
If Z=2 And List 2[11]>1:Then
List 2[11]-1->List 2[11]:List 2[1]+150->List 2[1]
If List 2[1]>List 2[2]:Then
List 2[2]->List 2[1]
IfEnd
Locate 1,5,"HP RECOVEREDChar!"
While Getkey=0
WhileEnd
ClrText:5->W
IfEnd
If Z=3 And List 2[12]>1:Then
List 2[12]-1->List 2[12]:List 2[3]+150->List 2[3]
If List 2[3]>List 2[4]:Then
List 2[4]->List 2[3]
IfEnd
Locate 1,5,"MP RECOVEREDChar!"
While Getkey=0
WhileEnd
ClrText:5->W
IfEnd
IfEnd
WhileEnd
IfEnd
If Z=5:Then
Locate 2,1,"CURE -3 MP"
If List 2[14]=1:Then
Locate 2,2,"ICE -5 MP":IfEnd
If List 2[15]=1:Then
Locate 2,3,"FIRE -6 MP":IfEnd
If List 2[16]=1:Then
Locate 2,4,"BOLT -6 MP":IfEnd
If List 2[17]=1:Then
Locate 2,5,"CURE2 -8 MP":IfEnd
If List 2[18]=1:Then
Locate 2,6,"HATE -15 MP":IfEnd
Locate 19,1,"MP:"
Locate 18,2,List 2[3]
10->W:1->Z:1->L
For 14->S To 18
If List 2[S]=1:Then
L+1->L:IfEnd
Next
While W=10
Locate 1,Z,"_=>_"
Getkey->K
If K>1:Then
Locate 1,Z," ":IfEnd
Z-1((K=28 And Z>1)-(K=37 And Z<L))->Z
If K=48:Then
ClrText:3->W:IfEnd
If K=78 And K=31:Then
ClrText
If Z=1 And List 2[3]>>=3:Then
Locate 1,1,"YOU CAST CUREChar!"
List 2[1]+100->List 2[1]
If List 2[1]>List 2[2]:Then
List 2[2]->List 2[1]:IfEnd
Locate 1,2,"YOU REGAINED HEALTHChar!"
While Getkey=0
WhileEnd
ClrText:IfEnd
If Z=2 And List 2[3]>=5:Then
Locate 1,1,"YOU CAST ICE..."
RanInt#(4,List 2[10]*4)->List 3[2]
Locate 1,2,Str 1
Locate 1,3,"TOOK"
Locate 1,4,List 3[2]
Locate 1,5,"DAMAGE"
While Getkey=0
WhileEnd
List 2[3]-5->List 2[3]:List 3[4]-List 3[2]->List 3[4]:IfEnd
If Z=3 And List 2[3]>=6:Then
Locate 1,1,"YOU CAST FIRE.."
RanInt#(6,6*List 2[10])->List 3[2]
List 3[4]-List 3[2]->List 3[4]
Locate 1,2,Str 1
Locate 1,3,"TOOK"
Locate 1,4,List 3[2]
Locate 1,5,"DAMAGE"
List 2[3]-6->List 2[3]While Getkey=0
WhileEnd:IfEnd
If Z=4 And List 2[3]>=6:Then
RanInt#(8,8+List 2[10])->List 3[2]
Locate 1,1,"YOU CAST BOLT.."
Locate 1,2,Str 1
Locate 1,3,"TOOK"
Locate 1,4,List 3[2]
Locate 1,5,"DAMAGE"
List 3[4]-List 3[2]->List 3[4]
List 2[3]-6->List 2[3]
While Getkey=0
WhileEnd
IfEnd
If Z=5 And List 2[3]>=8:Then
Locate 1,1,"YOU CAST CURE2.."
List 2[3]-8->List 2[3]
List 2[1]+200->List 2[1]
If List 2[1]>List 2[2]:Then
List 2[2]->List 2[1]
IfEnd
Locate 1,2,"YOU RECOVERED HEALTHChar!"
While Getkey=0
WhileEnd
IfEnd
If Z=6 And List 2[3]>=15:Then
Locate 1,1,"YOU CAST HATE.."
List 2[3]-15->List 2[3]
RanInt#(10,10*List 2[10])->List 3[2]
Locate 1,2,Str 1
Locate 1,3,"TOOK"
Locate 1,4,List 3[2]
Locate 1,5,"DAMAGE"
List 3[4]-List 3[2]->List 3[4]
While Getkey=0
WhileEnd
IfEnd
If List 3[4]<1:Then
ClrText:0->W
IfEnd
If List 3[4]>0:Then
ClrText
5->W:IfEnd
IfEnd
WhileEnd
WhileEnd
If W=5:Then
ClrText
Locate 1,1,Str 1
Locate 1,2,"ATTACKSChar!"
RanInt#(1,6)->J
If J>2:Then
7->W:IfEnd
If J<3:Then
If List 3[6]>=4:Then
8->W:IfEnd
IfEnd:IfEnd
If W=7:Then
RanInt#(1,6)->J
If J=1 Or J=4:Then
Locate 1,4,"STRIKE MISSEDChar!"
While Getkey=0
WhileEnd
3->W:IfEnd
If J<>1 Or J<>4:Then
Locate 1,3,"YOU TAKE"
List 3[8]-List 2[6]->List 3[2]
While List 3[2]<1
List 3[2]+1->List 3[2]
WhileEnd
Locate 1,4,List 3[2]
Locate 1,5,"DAMAGEChar!"
While Getkey=0
WhileEnd
ClrText
List 2[1]-List 3[2]->List 2[1]
If List 2[1]<1:Then
ClrText
Locate 1,1,"YOU HAVE DIED."
While Getkey=0
WhileEnd
(-)1->W:ClrText:Return
IfEnd
3->W:ClrText
IfEnd
If W=8:Then
If List 3[6]<4:Then
ClrText
Locate 1,1,Str 1
Locate 1,2,"DOESN'T HAVE ANY MPChar!"
While Getkey=0
WhileEnd
ClrText:3->W:IfEnd
Locate 1,3,Str 1
RanInt#(0,List 3[14])->J
If J=0:Then
Locate 1,4,"DOES NOTHNG.."
While Getkey=0
WhileEnd
ClrText:3->W:IfEnd
If J=1 And List 3[6]>3:Then
Locate 1,4,"CAST CUREChar!"
List 3[4]+50->List 3[4]
List 3[6]-4->List 3[6]
If List 3[4]>List 3[5]:Then
List 3[5]->List 3[4]
IfEnd
While Getkey=0
WhileEnd
IfEnd
If J=2 And List 3[6]>9:Then
Locate 1,4,"CAST ICE.."
RanInt#(4,4*List 3[10])->List 3[2]
Locate 1,5,"YOU TAKE"
Locate 1,6,List 3[2]
Locate 1,7,"DAMAGEChar!
While Getkey=0
WhileEnd
IfEnd
If J=3 And List 3[6]>15:Then
Locate 1,4,"CAST FIRE.."
RanInt#(7,7*List 3[10])->List 3[2]
Locate 1,5,"YOU TAKE"
Locate 1,6,List 3[2]
Locate 1,7,"DAMAGEChar!"
List 2[1]-List 3[2]->List 2[1]
List 3[6]-16->List 3[6]
While Getkey=0
WhileEnd
IfEnd
If J=4 And List 3[6]>21:Then
Locate 1,4,"CAST BOLT.."
RanInt#(10,10*List 3[10])->List 3[2]
Locate 1,5,"YOU TAKE"
Locate 1,6,List 3[2]
Locate 1,7,"DAMAGEChar!"
List 3[6]-22->List 3[6]
List 2[1]-List 3[2]->List 2[1]
While Getkey=0
WhileEnd
IfEnd
If List 2[1]<1:Then
ClrText
Locate 1,1,"YOU HAVE DIED"
Locate 1,2,"GAME OVER"
While Getkey=0
WhileEnd
(-)1->W:Return:IfEnd
If List 3[6]>3:Then
1->List 3[14]:IfEnd
If List 3[6]>9:Then
2->List 3[14]:IfEnd
If List 3[6]>15:Then
3->List 3[14]:IfEnd
If List 3[6]>21:Then
4->List 3[14]:IfEnd
3->W:IfEnd
If W=0:Then
ClrText
Locate 1,1,"VICTORYChar!"
Locate 1,2,"YOU GAIN:"
Locate 1,3,"GOLD:"
Locate 7,3,List 3[12]
List 2[7]+List 3[12]->List 2[7]
Locate 1,4,"EXP:"
Locate 6,4,List 3[11]
List 2[8]+List 3[11]->List 2[8]
Locate 1,5,"ITEM:"
If List 3[13]=0:Then
Locate 7,5,"NOTHNG":IfEnd
If List 3[13]=1:Then
Locate 7,5,"POTION"
1+List 2[11]->List 2[11]:IfEnd
If List 3[13]=2:Then
Locate 7,5,"ETHER"
1+List 2[12]->List 2[12]:IfEnd
If List 2[8]>=List 2[9]Then
Locate 1,6,"LEVEL UPChar!"
1+List 2[10]->List 2[10]:List 2[8]-List 2[9]->List 2[8]:30+List 2[9]->List 2[9]:10+List 2[2]->List 2[2]:List 2[2]->List 2[1]:7+List 2[4]->List 2[4]:List 2[4]->List 2[3]:1+List 2[5]->List 2[5]:1+List 2[6]->List 2[6]:IfEnd
1+List 2[21]->List 2[21]
If List 2[10]=3 And List 2[14]=0:Then
1->List 2[14]:Locate 1,7,"LEARNED ICEChar!":IfEnd
If List 2[10]=5 And List 2[15]=0:Then
1->List 2[15]:Locate 1,7,"LEARNED FIREChar!":IfEnd
If List 2[10]=7 And List 2[16]=0:Then
1->List 2[16]:Locate 1,7,"LEARNED BOLTChar!":IfEnd
If List 2[10]=10 And List 2[17]=0:Then
1->List 2[17]:Locate 1,7,"LEARNED CURE_^<2>_Char!":IfEnd
If List 2[10]=15 And List 2[18]=0:Then
1->List 2[18]:Locate 1,7,"LEARNED HATEChar!":IfEnd
While Getkey=0
WhileEnd
ClrText:Return:IfEnd
WhileEnd


If you want to help, there's the code.

I need to look out for the following:

Lists are as List #[#]

Anything that starts with " needs to end with "

If:Then:EndIf

While
WhileEnd

And ( needs a proper ) to close it for each instance.

I'll dig through the code after work, just figured if anyone was bored and they might spot something while I'm doing that, that would be awesome and help speed this along Smile

Update: Found one, near the top, If Z=5:Then was not on a new line..
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 2
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement