I recently got into using ICE (kudos to PT_ for making it!!!) and i have completed 1 game so far (http://www.cemetech.net/programs/index.php?mode=file&id=1574 ) and i am about halfway done with an ICE port of my Basic game Box Game SE (i'll link that one as well, once i find it)
:walrii:
The important part:
I had the idea the other night to make a top-down rpg-type game inspired by Dragon Warrior (which is one of my all-time favorite NES games :w00t:) I am planning on using sprites borrowed from that game :P
(http://dragon-quest.org/images/8/8f/DW_StartScreen_PRG0_NES.png) (https://upload.wikimedia.org/wikipedia/en/thumb/8/84/Dragon_Warrior.jpg/250px-Dragon_Warrior.jpg) (http://www.finalfantasykingdom.net/dw/1.jpg)
Hopefully i will be able to not fail horribly at this (i probably will though), because i would hate to disappoint anyone who would like this :)
I am hoping to maybe have a title screen (functioning or not) within the next few days :D
Also, my main project thread will be on Cemetech (the topic has the same name as on here) so hopefully I won't forget to cross-post :P
I can't wait to see your new games and what you will come up with for this. Just be warned that you will need to make a password-based save system like in Capcom's SNES games, though, because ICE lacks save files support. :)
Yeah, I realized that... :P
Also, I forgot how HUGE the map is :D
I have never gotten super far in the game, so I wouldn't know :w00t:
You doN't have to make a full Dragon Warrior clone, though. It could be a smaller-scale game with similar graphics to start with. Besides, in this day and age people don't like spending hours leveling up from 1 to 3 so you could perhaps also make your game less of a grinding fest than the original.
Yeah, that's what I was thinking... I'm just using the graphics and stuff, but the game itself will be different (because, yes, the grinding in the real game is incredibly painful)
(http://i.imgur.com/kLOY9FB.gif)
As you can see, i have no collision detection yet, and only the first room, but i am pretty happy with myself :) :w00t: :w00t: :w00t:
Wow that looks very nice so far! O.O
Looks awesome man!
Another Screenshot:
(http://i.imgur.com/K3MZPSd.gif)
Added rooms 3 and 4 (and the room number shows in the top left :P ) And added the outermost boundaries in all of those rooms'
For anyone who hasnt played this game before, here is the complete map of the first town (Tantegel) here it is: (http://www.thealmightyguru.com/Reviews/DragonWarrior/Images/Map-Tantegel.gif)
Quote from: PT_This looks really nice! The text is somewhat blurry, do you have the ability to change that or so? :)
That is because of my 128x120 sprite (that i scale x2)... i can have it be full sized, it would just take up way too much space, lmao
:love: Keep it up! You seem to be making progress very fast and keep going! :thumbsup:
(http://img.techpowerup.org/170506/kkzkbfs.gif)
More progress, and i added the map
To-do List:
*Make a way to draw the 16x16 sprites on-calc (luv ya CalcMeister)
*Devise a method for drawing each screen and the transitions
*Add the whole map and each town (like 5-10% done)
*hardcode the boundaries for each screen (5% done)
*add menu options (accessed using the function buttons)
*add player stats and items
*add enemy encounters and fighting
*other stuff that i cant remember right now
Boy does this game look pretty. Too bad I can never play it on a calculator :^(
Regardless, this game is definitely coming along nicely.
Are you using the tilemap data separate from the collision box data?
Because of the limitations of the language I'm using, there is no collision box data 😂😂
:OOO OOh my! I'm going to guess the language doesn't have arrays?
That's going to be a lot of data to write. You better get a coffee on standby!
Smooth scrolling wouldn't hurt, the FPS are quite high :ninja:
Anyway, since this is a tile-ed game, it makes no sense not to use the tilemap as the collision map >_>
Yes, scrolling would look fantastic, but don't worry about it for now. Get to the important stuff first!
Also if you're not experienced with arrays, they're not too hard too learn. Programming is to make your life easier, not harder. Automation for the win :^)
More screencaps as you go please. I love 'em.
Will you add water borders like the original world map?
Yes DJ, I will do that :)
A little update on progress:
To-do List:
*Make a way to draw the 16x16 sprites on-calc (luv ya CalcMeister)
*Devise a method for drawing each screen and the transitions
*Implement Saving {thank you PT_ for GetBASICVar( and SetBASICVar(}
*Add opening menu with option to either continue game or start new game
*add the physical menu options (accessed using the function buttons)(they mostly do nothing as of yet)
*Add the whole map and each town (like 5-10% done)
*hardcode the boundaries for each screen (5% done)
*add menu options (accessed using the function buttons)
--in game save menu (the keypresses work, but the menu wont draw right :o)
*add player stats and items
*add enemy encounters and fighting
*other stuff that i cant remember right now
I sorta broke saving, but i am trying to fix that rn
Made some more progress:
(http://img.techpowerup.org/170517/dwscreenshot4.gif)
To-do List:
*Make a way to draw the 16x16 sprites on-calc (luv ya CalcMeister)
*Devise a method for drawing each screen and the transitions
*Add opening menu with option to either continue game or start new game
*add the physical menu options (accessed using the function buttons)(they mostly do nothing as of yet)
*Implement saving (saving works, i broke loading)
*add the first town (75% done)
*Add the whole map (like 5% done)
*hardcode the boundaries for each screen (5% done)
*add menu options (accessed using the function buttons)(1 of 3 added)
*fix loading a save
*add player stats and items
*add enemy encounters and fighting
Quote from: Pieman7373 on May 18, 2017, 11:44:02 PM
Made some more progress:
(http://img.techpowerup.org/170517/dwscreenshot4.gif)
To-do List:
*Make a way to draw the 16x16 sprites on-calc (luv ya CalcMeister)
*Devise a method for drawing each screen and the transitions
*Add opening menu with option to either continue game or start new game
*add the physical menu options (accessed using the function buttons)(they mostly do nothing as of yet)
*Implement saving (saving works, i broke loading)
*add the first town (75% done)
*Add the whole map (like 5% done)
*hardcode the boundaries for each screen (5% done)
*add menu options (accessed using the function buttons)(1 of 3 added)
*fix loading a save
*add player stats and items
*add enemy encounters and fighting
Regarding the start of that screenshot, check out https://codewalr.us/index.php?topic=1515 :P , but more seriously, aside from that, this looks amazing as always. Glad this is still progressing. Keep us updated :)
Wow, Pieman7373 this game is coming along nicely. I'm looking forward to playing it!!! :thumbsup:
P.S. I'm new to codewalrus, so take it easy on me...
Heya
@Jock483 and welcome to the forums :3=
Hey there
@Jock483 and welcome to the site :)
If you want to (you donÄt have to but it'd be nice) you can introduce yourself HERE (https://codewalr.us/index.php?topic=32.msg56545;topicseen#new) (ignore the face we're offtopic) ^^
I'm still surprised by the speed ur game is running at ^^
Quote from: p2 on May 20, 2017, 02:43:49 PM
Hey there @Jock483 and welcome to the site :)
If you want to (you donÄt have to but it'd be nice) you can introduce yourself HERE (https://codewalr.us/index.php?topic=32.msg56545;topicseen#new) (ignore the face we're offtopic) ^^
I'm still surprised by the speed ur game is running at ^^
The speed is due to the use of ICE language :P
sorry for not clearifying, I ment the maximum walking speed. Cuz in the gif he's running throught the map in an insane speed x.x
(or maybe the gif just skips frames, I'm actuslly not sure)
Soooo, i kinda accidentally deleted the ICE source for this game off of my calculator (***Pieman7373 kicks PHASM for having evil bugs and for messing up UndeleteCE)... some good news is that i had a back-up on SC (i probably would have died otherwise)... Some bad news is that it is farther behind than i thought it was... Another piece of good news is that i am pretty sure that the back-up is only behind in terms of how many rooms i have added in the game (when i lost the source, i was in the progress of adding room 22 out of 26 of the first town, and the back-up has only 6-ish out of 26...)
This is the updated to-do list:
To-do List:
*Make a way to draw the 16x16 sprites on-calc (luv ya CalcMeister)
*Devise a method for drawing each screen and the transitions
*Add opening menu with option to either continue game or start new game
*add the physical menu options (accessed using the function buttons)(they mostly do nothing as of yet)
*Implement saving (saving works, i broke loading)
*add the first town (20% done) <=== :'(
*Add the whole map (like 5% done)
*hardcode the boundaries for each screen (5% done)
*add menu options (accessed using the function buttons)(1 of 3 added)
*fix loading a save
*add player stats and items
*add enemy encounters and fighting
Good thing you had a backup. Always keep more backups aside, such as a computer copy of the 8xp source code, in case. Even Cemetech-based backups aren't 100% safe from deletion, because of what happened in August 2007 (their hosting provider vanished overnight)
Glad to see progress by the way. Hopefully you can recreate the missing rooms without too much hassle
Adding the rooms themselves is super simple... hard-coding the transitions and the collision detection is what sucks :banghead:
Also
@DJ Omnimaga can you check your Cemetech PM's ? (it has to do with this game)
I hope you keep persevering even with the lost progress.
On another note I messed up my 'like' on one of your comments, so it says "O", lol.
I FOUND A MORE RECENT BACKUP!! Now my on-calc version is the same as the one in the most recent screenshot :D :w00t:
(still only 12/26 rooms, but that's fine)
Good to hear. :D
I'll check my Cemetech PM's when I have a chance.
Quote from: Pieman7373 on May 26, 2017, 12:47:15 AM
Adding the rooms themselves is super simple... hard-coding the transitions and the collision detection is what sucks :banghead:
Also @DJ Omnimaga can you check your Cemetech PM's ? (it has to do with this game)
Hardcodeing? This is how you should do it: :_)
Create an array of boolean values, one for each block, and set false if the block can be passed through and true if its solid. When you collide with a block, get the block's value from the array and prevent the player from moving in that direction if it is true.
@c4ooo I personally use the following method, it's less efficient speed-wise,
but it saves space so you don't have to make a collision array and a map array:
I create an array with integer values.
Each value corresponds to a tile-type.
You check if the tile is passable or not (but now it's not boolean, you have to check every tile-type).
Both systems seem to work swell enough :^)
Quote from: mazhat on May 26, 2017, 08:07:25 PM
@c4ooo I personally use the following method, it's less efficient speed-wise,
but it saves space so you don't have to make a collision array and a map array:
I create an array with integer values.
Each value corresponds to a tile-type.
You check if the tile is passable or not (but now it's not boolean, you have to check every tile-type).
Both systems seem to work swell enough :^)
I didnt mean collision array ;) I mean one boolean value for each tile. Then if you have a tile with ID 5, you check if the 5th element is true / false. This is the fastest / most efficient method possible.
Quote from: c4ooo on May 26, 2017, 10:13:52 PM
I didnt mean collision array ;) I mean one boolean value for each tile. Then if you have a tile with ID 5, you check if the 5th element is true / false. This is the fastest / most efficient method possible.
The tilemap data cant even be checked while i am moving around, so i have to hardcode boundaries and actions based on coordinates (a good 1/3 of my code is just that)
PROGRESS!!!!!!!!!!!!(http://img.techpowerup.org/170527/dwscreenshot5.gif)
Some pretty sexy progress, if i do say so myself :3
To-do List:*Make a way to draw the 16x16 sprites on-calc (luv ya CalcMeister)
*Devise a method for drawing each screen and the transitions
*Add opening menu with option to either continue game or start new game
*game wont try to load a save if it is empty
*Implement saving (DONE! loading works on-calc, but not in CEmu for some reason)
*Add Player stats (i capped the gold at 5 digits, just for you, Kerm :3 )
*add function menus
*make quitting the game be a menu option, not pressing [clear]
*add the first town (60% done)
*Add the whole map (like 5% done)
*hardcode the boundaries for each screen (5% done)
*finish the menu menu (F4)
*add encounters, 1 in 30 chance per step, they just dont do anything important yet :P
(encounter chance will go up and down depending on the section of the world you are in)
*add items
*add fighting
(BTW, the numbers show up fine, CEmu is just weird with the screenshots sometimes, also, you arent gonna be able to change your stats like that in the game, that is just for debugging :) )
Wait, you can't access Ice tilemap data for collision detection? O.O
Wowie! thats lookin quite awesome, lots of progress!
Quote from: Pieman7373 on May 27, 2017, 01:53:51 AM
Quote from: c4ooo on May 26, 2017, 10:13:52 PM
I didnt mean collision array ;) I mean one boolean value for each tile. Then if you have a tile with ID 5, you check if the 5th element is true / false. This is the fastest / most efficient method possible.
The tilemap data cant even be checked while i am moving around, so i have to hardcode boundaries and actions based on coordinates (a good 1/3 of my code is just that)
If ICE is anything like Axe you should be able to check the tilemap data. If it is like Axe, you should check out the rpg example program that comes packaged with Axe.
Quote from: Switchblade on May 28, 2017, 01:45:04 AM
Quote from: Pieman7373 on May 27, 2017, 01:53:51 AM
Quote from: c4ooo on May 26, 2017, 10:13:52 PM
I didnt mean collision array ;) I mean one boolean value for each tile. Then if you have a tile with ID 5, you check if the 5th element is true / false. This is the fastest / most efficient method possible.
The tilemap data cant even be checked while i am moving around, so i have to hardcode boundaries and actions based on coordinates (a good 1/3 of my code is just that)
If ICE is anything like Axe you should be able to check the tilemap data. If it is like Axe, you should check out the rpg example program that comes packaged with Axe.
I dont think ICE has direct memory access. At least not the last time i talked to PT_
So you can't do something like this?
{pointer + 1}
Quote from: Switchblade on May 28, 2017, 01:51:28 AM
So you can't do something like this?
{pointer + 1}
I dont think so, ask PT_. He did say he was going to add a command to read an address or something.
No pointers in ICE yet.
Yeah, i have been working quite closely with
@PT_ to make this and i have helped him find many bugs and prompted the additions of new features. As of right now, i am pretty sure that i am doing it in the most efficient way possible...
But that is NOT very efficient at all :crazy: 417 of my 888 lines of code are used to make the boundaries in just the 12 rooms that i have so far... there are 26 rooms in the first castle alone, and at least 6 or 7 more castles/towns... and that is not including the humongous overworld (
@DJ Omnimaga) so... unless a more efficient way emerges, i will likely run out of space (or my program will become too large for ICE to hendle)
Why don't you ask me for a small ASM snippet to check boundaries, instead of having 466 lines of code? :P
Hey,
@PT_, Can i have a small asm snippet to check boundaries?
***Pieman7373 hides
That makes me wish I did not quit calc programming. I did tilemapping before so maybe I could have found workarounds. But having to check 800 boundaries must cause massive slowdowns O.O
No, because it's programmed in ICE ;) :trollface:
That's still 400+ If blocks, though O.O
VERY EXCITING PROGRESS!!!!!!
(http://img.techpowerup.org/170530/dwscreenshot6.gif)
This is super exciting, because I got some help from PT_, and he was like "Its super easy to figure out which list element you are standing on from just the coordinates" Then he told me how (it was so simple, i kick myself that i didnt think of it) and then i was like "OMG, THANK YOU! NOW I CAN DO REAL COLLISION DETECTION AND NOT HAVE HUNDREDS OF LINES OF ANNOYING, UNNECESSARY CODE!!!!"
Oh and i added lost of debug numbers on the screen (i'll label'em for you guys)
(http://img.techpowerup.org/170530/debug-numbers.png)
To-do List:
*Make a way to draw the 16x16 sprites on-calc (luv ya CalcMeister)
*Devise a method for drawing each screen and the transitions
*Add opening menu with option to either continue game or start new game
*game wont try to load a save if it is empty
*Implement saving
*Add Player stats (i capped the gold at 5 digits, just for you, Kerm :3 )
*add function menus
*make quitting the game be a menu option, not pressing [clear]
*Add REAL collision detection (so far, you cant walk on stone blocks or water, but it is easy to add on to)
*add the first town (60% done)
*Add the whole map (like 5% done)
*finish the menu menu (F4)
*add encounters, 1 in 30 chance per movement step (only actually encounter a real enemy in the first world tilemap so far)
*Finish the encounter screen [make otions actually work (other than run)]
*add items
*add game mechanics (like leveling up, and the effect it has on your stats)
*add fighting
Blue slimes have a 3/5 chance of appearing, and red slimes have a 2/5 chance
Also, there is a 1/5 chance of successfully running from a slime
Also, just proof that saving does indeed work:
(http://img.techpowerup.org/170530/saving-works.gif)
Awesome! I was a bit worried that collision detection was impossible due to various ICE limitations, which kinda scared me cuz most tilemap games need it. Glad it was solved. Also screenshots look amazing as always.
Yes, I was very excited about It as well!
And thank you! :w00t: <3
I havent worked on this much, the only thing i have done is add a saving indicator that lets you know that the game actually saved
(http://img.techpowerup.org/170616/saving-indicator.gif)
I also added a cursor in the beginning instead of having to press a number
(http://img.techpowerup.org/170616/added-starting-cursor.gif)
sorry that the gif is soooo unnecessarily long
Good to see thisis still alive. I was abit worried when you switched to 68K programming lol
Quote from: xlibman on June 17, 2017, 05:17:18 PM
Good to see thisis still alive. I was abit worried when you switched to 68K programming lol
Oh yeah, I wouldn't give up in this! 😂 I was just trying out 68k basic because I got an 89T :ninja:
DWCE WILL NEVER DIE! :walrii:
You could do a (less smooth) 68K port eventually, once you master Basic on the TI-89 :P
"Once you master basic on the TI-89" means never, because I am mediocre at best with z80 Basic, and I suck at everything else that I know (basically ICE and CSE hybrid basic)
Nice :thumbsup:
what are you using to program it ???
It looks really good so far! The graphics are very medieval-looking!
Quote from: Alvajoy123 on June 22, 2017, 09:10:53 PM
Nice :thumbsup:
what are you using to program it ???
He is using ICE, as stated several times in the thread ;)
@Pieman7373Can I please take a look at the code (-_(//));
If you want your eyes to bleed,
@Alvajoy123
Quote from: Pieman7373 on June 24, 2017, 06:30:11 AM
If you want your eyes to bleed, @Alvajoy123
I want my eyes to fall out
@Pieman7373May I please see the code
Please by all means keep the code closed source for now.
Just keep developing.
Quote from: mazhat on June 24, 2017, 02:34:17 PM
Please by all means keep the code closed source for now.
Just keep developing.
?!
Translation: Don't worry about making the code open source, get get it f*cking done.
Quote from: p4nix on June 24, 2017, 02:57:00 PM
Quote from: mazhat on June 24, 2017, 02:34:17 PM
Please by all means keep the code closed source for now.
Just keep developing.
?!
By the way
@Pieman7373 , is this still alive?
@xlibman Yes, i just haven't worked on it in a while.... and ICE has changed so much that i know almost nothing about the current syntax :banghead: :'( :banghead:
Aaah I see. Maybe
@PT_ can help you if the commands you used have changed :3=
I actually talked to PT_, and he suggested I make it in C, since I would have to rewrite it anyways to utilize new ICE syntax
EDIT:
(https://i.imgur.com/apq54q3.png)
Here is the first screenshot of the C version!