News:

As a consequence of the forum being updated and repaired, the chatbox has been lost.
However, you can still come say hi on our Discord server!

Main Menu

GS Editor - Poll #1: Tree(s)

Started by Daddy Poi's Oily Gorillas, 29, January, 2014, 04:10:01 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

How should the main interface be designed?

1 Main tree. Everyhing will be listed here: The Editors and their items.
2 (50%)
2 trees. One for the Editors, the other for all their items.
2 (50%)
Other (Please post.)
0 (0%)

Total Members Voted: 4

Daddy Poi's Oily Gorillas

There are two Java IDEs that do Option #2 with their function lists (Eclipse and NetBeans), however, when I saw Visual Studio Express 2012, their function lists did it via Option #1. So this made me think about posting this question. , I'm guessing I could probably do both eventually, but I was wondering which one would more people be interested in. In otherwords, the one with the highest votes won't necessarily be the one to go in the Editor, but it can help with Brainstorming, I guess.



At one point, I was thinking about doing Option #2, but now, I'm starting to wonder if Option #1 is best. (Especially if you are able to open multiple trees to view data in different ways and stuff, which Visual Studio seems to allow.)
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Thunder-squall

Option 2 seems more modular, and I think 'interchangeable parts' are easier to fix or improve.

Aside:  Eclipse has been recommended to me over Netbeans.

Daddy Poi's Oily Gorillas

#2
Thanks for your input.  Although, this poll might end up becoming obsolete because of what Option #1 is doing to my brain. (Ex: Either drop down the list; or right-click item, open in new tab or section to view second tree (which may contain all the data at the scope of the editor or folder you are viewing.) )

Quote'interchangeable parts' are easier to fix or improve.
Do you have any sources that suggest this? (I'm not saying whether I disagree or not, but was interested in researching the idea further.)

Why have you chosen Eclipse over NetBeans.  ; I haven't yet decided which I preferred, so I randomly used NetBeans. (Though, I first tested Eclipse when messing with Java.)
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Thunder-squall

#3
Quote from: Teawater on 30, January, 2014, 03:51:22 AM
Thanks for your input.  Although, this poll might end up becoming obsolete because of what Option #1 is doing to my brain. (Ex: Either drop down the list; or right-click item, open in new tab or section to view second tree (which may contain all the data at the scope of the editor or folder you are viewing.) )

Quote'interchangeable parts' are easier to fix or improve.
Do you have any sources that suggest this? (I'm not saying whether I disagree or not, but was interested in researching the idea further.)

Why have you chosen Eclipse over NetBeans.  ; I haven't yet decided which I preferred, so I randomly used NetBeans. (Though, I first tested Eclipse when messing with Java.)

Word of mouth.  Some one who switched from Net Beans to Eclipse.

Edit:  @ interchangeable parts.  Just google the term, and the 'Industrial Revolution.'  Maybe also look up some general discussions on 'object oriented programming.'  Then form your own opinions.

Daddy Poi's Oily Gorillas

#4
My current opinions are:  Use fewer objects/classes/modules if it doesn't throw-off usability (Atleast when under ~1000 lines of code.), but I'd still group things that are significantly related into separate modules if I felt it deserved one.

And have more procedures/functions where needed. (Which is usually when you have 2+ calls to the same function, but this still applies to functions that are used just once and have a likely chance of being used again.)
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Thunder-squall

perhaps this is a bit of a tangent, but I'm going to post a bit of my own experience with LOVE(2d) --- I ended up often just starting from scratch, and trying to do the same things in different ways, again and again.  And each time I got a bit better, and did things a bit differently.

Basically, it was foolish of me to think I'd do it right the first time.  So now when I come to a choosing-point  (i.e. should I use approach A or approach B), I just do both, or whatever I feel like doing at a moment.  Because it really doesn't matter.  I know I'll be wrong, and I know I'll end up rebuilding it again anyway, using whatever new thing I learn.

So just do what you feel like.  Mark my words: It's not going to be a permanent decision, or one you'll be forced to stick with.  This is actually a good thing, because it frees you up for experimentation and the like.

What's the first demo-project you hope to have for us?

Daddy Poi's Oily Gorillas

@Permanent Decision: In some cases, people have to deal with those when they are near a dead line. But fortunately for us, this project doesn't get dead lines. Yay!

@Demo: I'm hoping it'll feature an assembly viewer at the bear minimum... (Map Code might not be included, though.) But I cannot even begin to tell you when it'll be ready.... *Long lecture about random procrastinations...*
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Thunder-squall

Quote from: Teawater on 30, January, 2014, 02:47:43 PM

@Demo: I'm hoping it'll feature an assembly viewer at the bear minimum...

What's an assembly?

Daddy Poi's Oily Gorillas

#8
To me, I think it's the languages you have to convert machine code to in order to read it.  http://en.wikipedia.org/wiki/Assembly_language


Ofcourse, in smple terms, you could probably replace the word with Code?:

Assembly Viewer = Code Viewer
Thumb Assembly = Thumb Code
Arm Assembly = Arm Code


If it helps, VBA has a tool called Disassemble... , so the term should actually be well known to 'true' hackers.
---
I can already warn you that if you don't already know Thumb/Arm, you will probably find it very confusing, so you might not find it useful until you understand how it works.  (It's also something I believe most 'true' programmers should look into, since it may give you some insight in how computers work. (Although, one should note computers use a different assembly language than GBA, and their registers are also different.)
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Thunder-squall

So what will people be able to see with an "assembly viewer?"  Isn't NetBeans/Eclipse or whatever you're using to write you code already the "assembly viewer?"

What exactly will your GS Editor be editing?  The rom?

Daddy Poi's Oily Gorillas

#10
The GS Editor's plan is to edit the entire ROM. (Including the code, as I was trying to say.)

Here's a sample of my experiments in Visual Basic: (The source for this experiment has been loss/destroyed,... but since the Editor is planned to be done in Java anyway, there's not really much loss.

Note that there will be a number of differences in the actual Editor, because since then, (Or since one point in time.), I decided on a tree list.
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Thunder-squall

#11
That's pretty cool.  So I guess Atrius's editor focused on getting a GUI to help people hone in on specific bits of the game's code? I.e. there was a specific section for editing character stats, and a specific section for ???

I think a pure assembly viewer would be a great place to start, and I'm actually against pouring in effort into a refined GUI (which I think is a thankless effort).  It'd make it easier for people like me who haven't hacked to see what the game's code looks like.  And all I'd really need are tips to point me towards what code is where, and maybe some info on what does what.  An editor-slash-guide sounds perfect.

Daddy Poi's Oily Gorillas

#12
Atrius's editor dealt mostly with data tables, but it may have allowed some code modifications as well. (See Code Patches section, and Map Code.) , but apart from those, very little else to do with code. (But there is something that patches Innate Psynergies to make them work.)

Pure assembly viewer is where I'm starting, yep.  I might one day go as far as experimenting with converting to a higher-level language... but I have doubts on that being anytime soon, seeing as to how difficult that may be.

I'm against pouring in a lot of effort for a refined GUI too, at-least as a priority, anyhow... Since for one, it can add to the file-size. But having simple stuff might be okay, though.

I was also one day hoping to have a feature for naming every single function in the game. These strings would go in a text file, however.  (And what if I were to expand the naming feature to variables and constants? I doubt I'd go that far just yet, if I ever decided to.)
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Thunder-squall

Quote from: Teawater on 31, January, 2014, 05:53:59 PM
Atrius's editor dealt mostly with data tables, but it may have allowed some code modifications as well. (See Code Patches section, and Map Code.) , but apart from those, very little else to do with code. (But there is something that patches Innate Psynergies to make them work.)

So your editor will eventually offer code modification?  Can you give me an example of what you expect it to do?

One reason I'd prefer to build from scratch is because I didn't think code modification was a possibility.

Luna_blade

I guess option #2 would be easier for you right?

(I do some amateuristic Visual Studio programming, but I have not programmed in Java yet, so I wouldn't know if Option #2 would be better)
"Hear the sounds and melodies
Of rilets flowing down
They're the verlasting songs
Whispering all the time
As a warning that behind some rocks
There's a rigid grap even
Oreads fear the tread"

Thunder-squall

If I were starting from scratch, I wouldn't go with Java.  Just sayin.  But that's completely personal.

Daddy Poi's Oily Gorillas

#16
@Thunder_squall: That is the plan. Examples? The image I have in my mind is that the tree list will contain a list of everything that is in the ROM. The order items appear in the tree list should be the same order they are found in the data.

@Luna_blade: I can't say for sure if Option 2 would be easier or not. But I'm guessing it could be of a similar difficulty. (Option #2 might have more text, though, since you have to set up the second tree and all.)

@thunder_squall: Why not?

-Java has Multi-platform compatibility... Not everone uses Windows. (I recall JamietheFlameUser having Mac, and Lishy having Linux. If I remember correctly.) Also,I knew nothing of alternatives like LOVE, although, I did know about WINE, but I'm guessing it works slower than Windows OS.
-I was interested in learning Java.
-Java can do applets. (Not that my editor needs that.)
-Atrius uses Java for his game, so that gives me more reasons to learn Java. (Not saying that he's going to make it open-sourced/free licensed or anything, though.)
-No one complained directly to me about Java when i had that decision. And there were two others that seemed to have some experience in Java.
-There's a GS Save Editor that was coded in Java...
-When I learned about the Java IDEs, that's when I first found out about Function Lists. (Even when coding in Visual Basic in the pass, I don't think I really bothered with Visual Sudio, but instead, I had Visual Basic Express, which I don't think featued function lists..)


But yeah, when I think of Java's Complexity (Things like no goto command, all primitive types are signed, as well as the ByVal/ByRef problem with function arguments...., and the difficulties with checking for memory leaks. (Garbage Collection.)) , it's almost better to have used Visual Basic, but I remember that someone didn't care for it because of its lack of multi-platform compatibility. (And I am not sure what WINE is like on Mac/Linux...)  ; Maybe I'll design a conversion program to test other languages? (Not saying I'd actually do it at this time, but forming ideas for possible experiments.)
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Misery

I don't understand why you want a goto when you're using a higher level language, or why not having unsigned primitives is a problem. As for the problem with arguments, that's not something I'm familiar with... not trying to argue, rather, I'm curious.

Also, is this poll about the interface for the editor, or for the code of the editor? In either case, I'm not sure I understand what option 2 means...

Daddy Poi's Oily Gorillas

#18
They're not actually 'real' problems, they just make the language seem less user-friendly by my stance.

Goto = So I don't have to waste my time trying to figure out how to properly jump somewhere? (In the event the obvious won't cut it.)
Unsigned = It's not really much of a problem because I can just use a larger datatype when I need something unsigned.
Function Arguments = Java passes arguments ByVal, which means, if you edit the argument inside the function, it does not edit the actual variable, but only the value that was given to the function. (This means you lose the edited value after the function completes.) Arrays / Objects are different, however, and will be edited.

It's for the interface of the editor. (Did you read the question?)

Option #2 means...

[Tree 1 holds list of data tables]
[Tree 2 holds the entries in the selected data table]
Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Sometimes I like to compare apples to oranges. (Figuratively) ... They are both fruits, but which one would you eat more? (If taken literally, I'd probably choose apples.)
Maybe it is over-analyzing, but it doesn't mean the information is useless.


The only GS Discord servers with significance are:
Golden Sun Hacking Community
GS Speedrunning
/r/Golden Sun
GS United Nations
Temple of Kraden

Can you believe how small the Golden Sun Community is?

2+2=5 Don't believe me? Those are rounded decimal numbers. Take that, flat earth theorists! :)

Thunder-squall

@ not every one has windows: Not a problem.  I hear that Mac users can use the same stuff.  At least by the guest on episode one of the following show, who seems to be qualified to make the statement.  He mentions the specific option, but I can't remember it.

http://twit.tv/show/coding-101/0