Kuribo64
Views: 19,850,389 Home | Forums | Uploader | Wiki | Object databases | IRC
Rules/FAQ | Memberlist | Calendar | Stats | Online users | Last posts | Search
03-28-24 10:36 AM
Guest:

0 users reading Whitehole 1.5 | 1 bot

Main - Misc. ROM hacking - Whitehole 1.5 Hide post layouts | New reply

Pages: 1 2 3 4
Super Hackio
Posted on 08-02-17 02:21 AM (rev. 2 of 08-02-17 02:42 AM) Link | #85505



I couldn't keep myself from sharing this...

WHITEHOLE 1.5

(No Public Release... Yet.)

Now that I FINALLY sat down and learned the Java I needed to, I decided that I would take Whitehole into my own hands and give developing the worlds ONLY 3D SMG/SMG2 Level editor a shot.

At first, It wasn't easy. but I managed to change a few things...
This is what the obj_arg editor panel USED to look like...
[image]
But In Whitehole 1.5, It looks like this:
[image]

You might be saying: But all you changed is the text. obj_arg = Object Arguments.

[image]
In this example, I have a Fireball shooter (FirePressure) selected (IN SMG2)
[image]
In this example, I have a Fireball shooter (FirePressure) selected (IN SMG1)
Mecha Bowser isn't in SMG2

This is all I currently have, But here are some of my plans:

- Gravity range viewing (It will look similar to Areas & Camera-Areas)
- Full Path Support (+ more colors/Custom Colors)

This is it for now, I'm not sure if I'm gonna change the BCSV editor at all. I might, but I might not. :/

This is indeed a large project, So I'm not going to rush, but I'm not going to give up.
I'll probably get an ALPHA build of this out that will include the obj_arg names soon. Depends on how fast I can get them to load from the OBJDB. :P

If you have any suggestions, questions, ETC. Feel free to post below.

(PS: I may or may not ask for some help. If I do, It'll be because I'm REALLY stuck somewhere. ;))

____________________
SMG RUN Progress: Not available here, for more information, check my Youtube Channel

TheSunCat
Posted on 08-02-17 02:21 PM Link | #85523
I would be EXTREMELY happy to help!! I tried something like this a while ago, but I eventually gave up because there was not enough object documentation. If you want to PM me, we can share code and ideas.

BEFORE YOU SAY YES:
Be aware that I have never done an app from scratch, I have always modified code. If that is ok, then I can help.

SunakazeKun
Posted on 08-02-17 09:28 PM Link | #85544
>not enough object documentation
aka too lazy to look on NMG's object database that has every object from SMG2 documented except for ~15 out of ~1700.

Anyway, it's nice to have these displayed on the datagridview, but this doesn't require a new version for this little change. Well, imo. You could have done a pull request or something on Github.
Also, I suggest to start from scratch, because there's a lot of ...well... shitty code. It would be easier than rewriting most of the things. I admit that there's a lot of bugs and problems in the v1.4 builds, but I don't think you bothered to fix these. This isn't supposed to be rant or anything, but I don't really think that this is a good idea.



Youtube | Github | Neo Mario Galaxy | Super Mario Galaxy & Super Mario 3D Land Modding


shibboleet
Posted on 08-02-17 09:31 PM Link | #85547
step 1: stop using java

____________________
a

Arisotura
Posted on 08-02-17 09:33 PM Link | #85549
the code is a pile of shit.

WhiteholeCS might be a good base to build onto.

____________________
NSMBHD - Kafuka - Jul
melonDS the most fruity DS emulator there is

zafkflzdasd

Super Hackio
Posted on 08-02-17 09:40 PM Link | #85550



Posted by StapleButter
the code is a pile of shit.

WhiteholeCS might be a good base to build onto.

Does that support paths? IF yes, then yeah, that'll be usefull. Else, Nah.

Posted by shibboleet
step 1: stop using java

DON'T BE A HATIN'
Posted by SunakazeKun
>not enough object documentation
aka too lazy to look on NMG's object database that has every object from SMG2 documented except for ~15 out of ~1700.

Anyway, it's nice to have these displayed on the datagridview, but this doesn't require a new version for this little change. Well, imo. You could have done a pull request or something on Github.
Also, I suggest to start from scratch, because there's a lot of ...well... shitty code. It would be easier than rewriting most of the things. I admit that there's a lot of bugs and problems in the v1.4 builds, but I don't think you bothered to fix these. This isn't supposed to be rant or anything, but I don't really think that this is a good idea.

Well, What do ya think I'm doing? Cleaning up (A little) and throwing in new things.

MAIN GOAL: More convenient/no0b friendly

____________________
SMG RUN Progress: Not available here, for more information, check my Youtube Channel

Arisotura
Posted on 08-02-17 09:41 PM Link | #85551
WhiteholeCS was pretty barebones. I don't think it even supported editing.


but of course, if people sit there calling it 'useless' instead of working on it, well

____________________
NSMBHD - Kafuka - Jul
melonDS the most fruity DS emulator there is

zafkflzdasd

JakoNintenCraft
Posted on 08-02-17 09:42 PM Link | #85552
Posted by StapleButter
the code is a pile of shit.

WhiteholeCS might be a good base to build onto.

Yeah it may have fewer bugs and/or be in a good language but it lacks a whole lot of features and will have to be recompiled for every OS versus Java being near system-independent

____________________
Irony is the spice of life.

You're inside a simulation, of a simulation, inside a simulation, of a simulation, inside the Matrix, inside a taco, inside a taco, within a Taco Bell, that's inside a KFC, within a mall, that's INSIDE YOUR BRAIN!; inside another giant simulation!


shibboleet
Posted on 08-02-17 09:42 PM (rev. 2 of 08-02-17 09:43 PM) Link | #85553
i can give you at least 15 reasons to not use java

Posted by JakoNintenCraft
Yeah it may have fewer bugs and/or be in a good language but it lacks a whole lot of features and will have to be recompiled for every OS versus Java being near system-independent



...java is the same way, and so is C++

____________________
a

mustafa
Posted on 08-02-17 09:44 PM Link | #85554
whats wrong with the crappy code? The program seems to work well wtf?

shibboleet
Posted on 08-02-17 09:45 PM Link | #85555
crappy code can lead to unwanted memory leaks, which can lead to frustration, which can lead to other people not wanting to alter it, requiring more work

____________________
a

Super Hackio
Posted on 08-02-17 09:46 PM Link | #85556



Posted by shibboleet
i can give you at least 15 reasons to not use java

Don't need 'em.

Posted by StapleButter
WhiteholeCS was pretty barebones. I don't think it even supported editing.


but of course, if people sit there calling it 'useless' instead of working on it, well

Oh. Well, I'll stick with Java then.

(Jeez, this isn't being taken lightly. Can't people just appreciate the efforts of others?)

____________________
SMG RUN Progress: Not available here, for more information, check my Youtube Channel

shibboleet
Posted on 08-02-17 09:47 PM Link | #85557
"this isn't being taken lightly"

so you expect people to just accept what you did rather than give criticism?

____________________
a

Super Hackio
Posted on 08-02-17 09:48 PM Link | #85558



Posted by shibboleet
"this isn't being taken lightly"

so you expect people to just accept what you did rather than give criticism?

Not exactly... It's just that I didn't expect anyone to object me using Java.

____________________
SMG RUN Progress: Not available here, for more information, check my Youtube Channel

shibboleet
Posted on 08-02-17 09:49 PM Link | #85559
well, java sucks, so uh, that's not exactly surprising to hear

____________________
a

Super Hackio
Posted on 08-02-17 09:50 PM Link | #85560



Posted by shibboleet
well, java sucks, so uh, that's not exactly surprising to hear

It doesn't suck. :( It's just confusing. (For some people...)

____________________
SMG RUN Progress: Not available here, for more information, check my Youtube Channel

Arisotura
Posted on 08-02-17 09:50 PM (rev. 3 of 08-02-17 09:52 PM) Link | #85561
first one, although it's not really about Java itself


JOGL is a dumb pile of shit compared to OpenTK. one is a cleverly designed wrapper that takes advantage of its language's features, the other is a dumb verbatim wrapper that ends up overcomplicating things.

for example, shader compilation code:

https://github.com/StapleButter/WhiteholeCS/blob/master/BmdRenderer.cs#L133 vs https://github.com/StapleButter/Whitehole/blob/master/src/whitehole/rendering/BmdRenderer.java#L301

esp. how to get the shader compile log, in C#:
string log = GL.GetShaderInfoLog(vertid);
all the complexity of the original OpenGL API is cleverly hidden behind a simple API call that handles everything for you and returns a nice string.

in Java:
gl.glGetShaderiv(vertid, GL2.GL_INFO_LOG_LENGTH, sillyarray, 0);
int loglength = sillyarray[0];
byte[] _log = new byte[loglength];
gl.glGetShaderInfoLog(vertid, loglength, sillyarray, 0, _log, 0);
CharBuffer log;
try { log = Charset.forName("ASCII").newDecoder().decode(ByteBuffer.wrap(_log)); } catch (Exception ex) { log = CharBuffer.wrap("lolfail"); }
the API sticks to the original OpenGL design. you must first retrieve the length of the log (and use a one-entry array because Java doesn't have pointers). then the log is given to you, but it's a raw char array. you need to convert it to a string, and be sure to catch any exceptions that process could throw. this code is a horrid pile of crap, for something the other API did in one line.

____________________
NSMBHD - Kafuka - Jul
melonDS the most fruity DS emulator there is

zafkflzdasd

Super Hackio
Posted on 08-02-17 09:51 PM Link | #85562



Hmm. Interesting Arisotura

____________________
SMG RUN Progress: Not available here, for more information, check my Youtube Channel

Arisotura
Posted on 08-02-17 10:02 PM Link | #85563
oh also, let me talk you about the exception handling nightmare


C# exception handling is bad, the dialog gives you the option to continue running in a fucked-up state


so Java forces you to handle all exceptions. except runtime exceptions, like NullPointerException.

and when those happen, all it does is print the message to stdout and continue running. if you have no console attached, you have no idea that something went wrong, all you get is that your program may become weird.

atleast C# always lets you know and gives you an opportunity to do the sensible thing -- close the program. Java just hopes you noticed.


I had eventually tried to catch all exceptions in Whitehole. the idea was to log the exception stack trace somewhere, inform the user that something went wrong and that they might want to exit the program. you'd think it must be doable, right?

ahahahahah.

it only worked half the time. the other half, it completely froze the program without giving anything useful.


I haven't tried doing that in C#, so can't tell if it would work there.


I'm no C# fanboy -- it does have its share of issues, and unless you stick to trivial programs, things quickly degrade once you run on anything that isn't Windows.

But Java is bad too.


Java also has no unsigned types! every decent programming language has them.

____________________
NSMBHD - Kafuka - Jul
melonDS the most fruity DS emulator there is

zafkflzdasd

Super Hackio
Posted on 08-02-17 10:04 PM Link | #85565



I made an exception handler before.

Making one in java shouldn't be too hard...

____________________
SMG RUN Progress: Not available here, for more information, check my Youtube Channel
Pages: 1 2 3 4

Main - Misc. ROM hacking - Whitehole 1.5 Hide post layouts | New reply

Page rendered in 0.062 seconds. (2048KB of memory used)
MySQL - queries: 29, rows: 237/237, time: 0.012 seconds.
[powered by Acmlm] Acmlmboard 2.064 (2018-07-20)
© 2005-2008 Acmlm, Xkeeper, blackhole89 et al.