CodeWalrus

Featured Member Projects => Completed and Inactive Projects => [Inactive] Hero Core (TI-83+/84+) => Topic started by: Keoni29 on January 01, 2015, 12:12:07 AM

Title: Hero Core - Tools
Post by: Keoni29 on January 01, 2015, 12:12:07 AM
Separate topic for development tools for Hero Core. I wanted to create my own tools because I was not happy with the existing ones.

Core Editor (short: cEdit)
Type: World editor
Platform: Win32/Linux
Source: https://github.com/keoni29/cedit
Progress: Almost done for first release

TRAXE2
Type: Music editor
Platform: TI83+
Source: https://github.com/keoni29/traxe2
Progress: Tracker screen and scrolling works.
Eiyeron is helping me with this one :D
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 01, 2015, 11:55:05 AM
Tool update: Core Editor
(https://raw.githubusercontent.com/keoni29/cedit/master/screenshots/screenshot.png)
You can now place tiles, but it's just drawing them directly to the screen buffer instead of saving them in an array. You cant save anything yet. That will be the next step.
Title: Re: Hero Core - Tools
Post by: pimathbrainiac on January 01, 2015, 04:52:33 PM
Sweet! I'll have to rebuild my TIMID soon to use TRAXE2.
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 02, 2015, 07:32:41 AM
What will be nice in TRAXE is if we can hear what we type in the notes sequencing, like in Music/Music 2000, if that's not implemented already. Also nice work on the editor so far. Looking at those maps makes me smile because I like looking at big maps for old school games. :P
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 02, 2015, 08:32:31 AM
Yeah, I like making maps as well. Already this editor works much nicer than the editor supplied with gamemaker >_>
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 02, 2015, 03:15:54 PM
Tool update: Core Editor

It is now possible to save and load. Next thing I will be working on is moving around the world map, so you can edit all rooms.
Whenever I post a tool update I will also push my commits to github.
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 02, 2015, 05:18:24 PM
Is the world map similar to the other maps or is it like an early Final Fantasy game world map linking every area together?
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 02, 2015, 06:53:54 PM
This is what the map screen looks like on the PC version. I want mine to be similar.
(http://www.blogcdn.com/news.bigdownload.com/media/2010/05/bd-ff-herocore1.png)
You see where you can pass trough walls (indicated by a gap.) This only shows for rooms that you visited.

Here's a miniature of one of the maps found in Hero Core for the Pc
(http://critical-gaming.com/storage/herocore_map.png?__SQUARESPACE_CACHEVERSION=1293401648865)

I'd like to add a miniature preview to the editor as well, but that does not have top priority right now.

I just cleaned up some code and added scrolling. You can now edit the entire world. Next I will add commandline parameter parsing, so you can select your input and output files, specify a tileset image, world size, that sorta jazz.

Edit: Some graphical updates
(https://raw.githubusercontent.com/keoni29/cedit/master/screenshots/screenshot2.png)
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 03, 2015, 08:29:29 AM
Ooh pretty nifty. For the mini map I hope you can manage to fit it in one calc screen. :P


Will your map tool eventually support 20x15 chunks too in case someone wants to port your game to color models?
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 03, 2015, 11:11:48 AM
It already does support that! There is no way for the user to change these parameters yet. I will be working on the command-line editor parser.

These are the settings that will be available:
Grid size
Word size
Room size
Tileset size
Tileset image
View size


Tool Update: Core Editor
I made a world miniature which will show where all the entrances to rooms are. For this I need to write an entrance-detection algoritm (fancy term for empty space checking.)
You can use it to navigate trough the world. You can drag the view across the world map using the miniature.

It's now possible to export to 8xv using the included tool: to8xv :D
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 03, 2015, 12:29:32 PM
Ah cool to hear. :D And how is the 8xv laid out?
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 03, 2015, 12:39:39 PM
header field:
1 byte: World width
1 byte: World height
perhaps some more info will follow
data field:
in Hero Core's case 9 x 8 chunks of 88 bytes tilemap data.
Title: Re: Hero Core - Tools
Post by: aetios on January 03, 2015, 01:52:19 PM
Are you aiming for a 1:1 clone or are you going to create a version with different maps and stuff?
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 03, 2015, 02:06:03 PM
I will be using the same game mechanics, but a different map. I am not sure what I will be doing with the story.
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 04, 2015, 06:01:03 AM
Quote from: Keoni29 on January 03, 2015, 12:39:39 PM
header field:
1 byte: World width
1 byte: World height
perhaps some more info will follow
data field:
in Hero Core's case 9 x 8 chunks of 88 bytes tilemap data.
Ok thanks. That would be useful if we ever decide to use the editor to make the game for a different language or calculator and if we want to convert the data.
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 04, 2015, 02:50:02 PM
What kind of undo/redo implementation would suffice? Simple flip-undo or a linear undo stack which holds all changes?

Edit: Cleaned up source and added code summary/index.
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 05, 2015, 07:55:05 AM
It doesn't have to hold 9001 changes, but at least 3-5 would be great (unless it doesn't take much RAM then you could add more).
Title: Re: Hero Core - Tools
Post by: aetios on January 05, 2015, 12:08:08 PM
A stack would be ideal. I don't think it'd be much different if it holds 9000 or 2 changes, so make it big :p
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 05, 2015, 05:07:49 PM
Quote from: aeTIos on January 05, 2015, 12:08:08 PM
A stack would be ideal. I don't think it'd be much different if it holds 9000 or 2 changes, so make it big :p
i was pointing out because in image editors, one Undo can be worth several MB of RAM. O.O
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 05, 2015, 05:14:49 PM
I was thinking about an actions stack as well. I want to revert all tile placements in one drag every time you undo, but I would like to have a redo function as well. With a regular stack I cannot do that. I need a stack that can go back without pushing a new value on top.
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 06, 2015, 05:04:53 PM
The commandline options processing works now. I just have to add some more tests for invalid input combinations so the user cannot break the editor :P
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 06, 2015, 06:20:44 PM
As long as it doesn't become command-like-only :P (I hate working in command prompt because it takes so long to type anything and batch files are not always an option)
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 06, 2015, 06:49:53 PM
You only have to specify parameters once. The editor configuration as well as the tilemap are stored in .core files (but not in the exported appvar)
When you load a .core file the editor is automatically configured :)
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 06, 2015, 10:36:13 PM
Ah ok that's good then lol. Many command prompt-based softwares won't do that.
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 06, 2015, 11:46:06 PM
Yes! I got it to build on windows without modifying the source! Setting up a compiler and SDL is a lot more work on windows compared to linux tho O.O

I am still having some issues with loading PNG files and getting the stdout to display in the cmd window instead of writing to a file as well as exporting to appvars. This means I have to figure out what windows is doing differently.
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 07, 2015, 12:27:56 AM
Cool to hear. Good luck with the rest. Hopefully you can make this program for multiple OSes without having to work on two different versions simultaneously.
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 07, 2015, 12:37:19 PM
I just cleaned up my source a bit and I added some checks, so bad user input won't break the editor :P
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 07, 2015, 05:31:49 PM
So we can't add 3D to the game? :P
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 07, 2015, 07:44:39 PM
The user cannot break it. Other coders can. It is open source, so if you want to add a depth axis to it, that is fine with me :P
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 07, 2015, 07:45:52 PM
Oh I meant before you improved it to prevent users from breaking it. :P


That said, depth would be interesting for an HP Prime port :P
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 07, 2015, 08:34:31 PM
No need to port anything. I just need to make a converter tool that exports to whatever format hp uses.
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 07, 2015, 09:52:32 PM
The main one I use for map storage are images since I found maps easier to edit in Paint or whatever image editor I use, but for map rendering and collision I need to convert the data to a list for easier access.
Title: Re: Hero Core - Tools
Post by: Keoni29 on January 07, 2015, 10:41:04 PM
What kind of list? CSV?

Edit: Added grid_width and grid_height options. Before the grid had a 1:1 aspect ratio.
Title: Re: Hero Core - Tools
Post by: Dream of Omnimaga on January 08, 2015, 01:20:20 AM
TI-83+ BASIC style lists. I forgot the syntax, though, because the last time I used them was in early 2013 in my HP 39gII Tunnel game.
Title: Re: Hero Core - Tools
Post by: novenary on January 21, 2015, 02:02:46 PM
Nice to see you got some tools going. It's always good to speed up game dev to have a decent set of tools to work with.