Kuribo64
Views: 19,852,928 Home | Forums | Uploader | Wiki | Object databases | IRC
Rules/FAQ | Memberlist | Calendar | Stats | Online users | Last posts | Search
03-28-24 11:36 PM
Guest:

0 users reading Whitehole v1.1.3 Release! [All New!] | 2 bots

Main - Archived forums - General SMG hacking - Whitehole v1.1.3 Release! [All New!] Hide post layouts | New reply

Pages: 1 2 3
shibboleet
Posted on 02-23-15 03:52 AM (rev. 5 of 02-23-15 06:07 AM) Link | #56706
Well yeah, after a while I decided to post the source cuz I'm not a closed-source jerk. :P

but first...

v1.1.3.1!



oh, and the source code:
https://github.com/MrRean/Whitehole

All I did was add support for most hashes in the BCSV editor.

And here's a sneak peek at the next version:
[thumbnail]
;)

____________________
a

KoopaTroopaMan
Posted on 02-23-15 06:22 AM Link | #56711
Yay now I don't need to use the lookup anymore! With next version you mean 1.1.3.2?

shibboleet
Posted on 02-23-15 06:22 AM Link | #56712
I guess so.

____________________
a

KoopaTroopaMan
Posted on 02-23-15 06:23 AM Link | #56713
Wasn't just 1.1.3 enough Upgraded to be 1.4?

shibboleet
Posted on 02-23-15 06:24 AM Link | #56714
No.

____________________
a

SunakazeKun
Posted on 02-23-15 06:58 AM (rev. 3 of 02-23-15 07:13 AM) Link | #56717
Will you also add GeneralPos and ChildObj editing?

EDIT: Is the BCSV editor compatible with custom galaxies as well?

EDIT 2: There still are some objects that don't render correctly, like MorphItemNeoFoo, the flowers, the fish groups, the Dino Piranha bosses, Tarantox, Spicy King Kaliente, and more...



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


shibboleet
Posted on 02-23-15 07:31 AM Link | #56719
I have no idea how to load ChildObj just for SMG1, so no.
GeneralPos has no scale, so I'd have to work around LevelObject which is a no.


And I never focused on SMG1.

____________________
a

SunakazeKun
Posted on 02-23-15 07:39 AM (rev. 2 of 02-23-15 08:30 AM) Link | #56721
What about my other questions?

EDIT: Also, uhhh, Camera editing?



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


KoopaTroopaMan
Posted on 02-23-15 11:16 AM Link | #56722
Which hashes in AreaObjInfo in SMG1 is not found in the DOL? Even if nobody have found those hashes, can't you then just have SMG1 support, even with hashed names or call it "Unknow" or something?

Jesse
Posted on 02-23-15 01:21 PM Link | #56729
what happened to the c# version of whitehole?

KoopaTroopaMan
Posted on 02-23-15 01:39 PM Link | #56734
It became rewritten in Java. You can find it in my tool pack.

Arisotura
Posted on 02-23-15 01:40 PM (rev. 2 of 02-23-15 01:49 PM) Link | #56735
https://github.com/StapleButter/Whitehole/tree/b452cf2527c54370b8089680a798eb519e443592 <- the last commit to it before it was botched.


Whitehole started being deved in C#. But it would meet the same issues as SM64DSe under Linux, repainting, bleh. I was suggested to go with Java, more chances of it working properly.

In the end, took ages to convert the code to Java, took more ages to rename every fucking variable because dirbaio kept complaining about the naming conventions, and then fixing a lot of dumb shit mostly caused by Java's lack of unsigned types (like for example texture decoding screwing up), and then getting the actual editor somewhere.


How has it worked? I disliked Java, even moreso associated with Netbeans. Pretty much like Eclipse, Netbeans feels complicated, big, slow. Every dialog box has tons and tons of things you almost never use. The coding help/autocomplete feature is slow and gets in the way, and no fucking way to turn it off despite there being a plethora of options about any little thing. Eclipse has a better coding help, though.

But that's not the experience I had with C#. No dumb shit like 'lol no unsigned types, please hack around it by adding ugly boilerplate code or using types twice bigger and wasting RAM (or wait for Java 8 and another dumb @Notation)'. You get shit like Linq, which you can see used in SM64DSe's code and it's really nice. And in Visual C#, Intellisense is really cool to have with you, it really helps me write code faster. And more.

And supposedly, Fiachra found a way to fix the issue SM64DSe had under Linux. Would still have to test, though.

Or port it to GTK# so it's portable? Meh. There's no real GTK# equivalent to the OpenTK GLControl. There's one, but it's outdated and broken.


It really feels like the GLControl thing is a niche thing, heh. Perhaps a software-based renderer should be in order for the really bad cases where GLControl doesn't work for whatever reason?



And don't get me started on the responsiveness of Swing. Really, Whitehole feels somewhat slow and unresponsive, which tends to hint big ugly coding. SM64DSe on the other hand, responds instantly to whatever shit you do.



And then there's shit like exception handling. "But Java forces you to handle exceptions everywhere, it forces you to do the good thing, that's good!", yeah, so much for that.

It's really annoying to have to handle exceptions that shouldn't happen unless the user does something dumb (or sometimes shouldn't happen at all unless something's terribly wrong), when you want to focus on getting your code to work.

"but in .NET, uncaught exceptions just give you that dialog with the 'continue' and 'stop' buttons, that's bad"

There is one type of exceptions in Java that doesn't go by the rule I mentioned above. And of course, those are the most likely to occur. The RuntimeExceptions. For example, when for whatever reason some object was null and you tried accessing it.

What happens in these cases? Java prints the exception message and stack trace to stdout (the console), and the program continues running in a half fucked-up state. If there is no console attached to the program, you are completely uninformed that something went wrong, all you get is the program misbehaving for no apparent reason.

And trying to catch all these exceptions at the top level doesn't really work, either, especially when Swing is involved. When I tried in Whitehole, half of the time they got caught as expected, the remaining half they would just freeze the whole thing without giving anything useful.

So much for Java's epic exception handling.





tl;dr Whitehole Java was an experiment and the only reason it went on is that it worked under Linux. I still regret it.

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

zafkflzdasd

skyl
Posted on 02-23-15 09:19 PM Link | #56787
Posted by StapleButter
Whitehole feels somewhat slow and unresponsive


Really? It seems perfectly responsive to me. Everyone has their opinions, I guess.

____________________
Can you burn a Luigi board?

KoopaTroopaMan
Posted on 03-03-15 09:22 PM Link | #57189
Some important suggestions:

If you change a value (in a field or whatever it's called, example CometLimitTimer) in Whitehole's BCSV editor when you have selected multiple rows/entries, then the value would be changed to that in all the selected rows. Same that it would delete all selected rows/entries.

That would make things like editing collisions in PA files a LOT faster, instead of changing the value in 1000 entries, it would be like 1000 times faster. This multiple selecting would also be very useful in Whitehole too, example if you want to delete a lot of stuff or if you example want to give a lot of Flipswitch panels or something the same GroupID or whatever to make them work with each other.

shibboleet
Posted on 03-03-15 09:24 PM Link | #57190
what the hell do you edit 1000 entries for

____________________
a

KoopaTroopaMan
Posted on 03-03-15 09:38 PM Link | #57191
For editing collision, maybe? Because PA files often have like 1000 entries with collision values. It's the same value in many entries. You need to edit the collision value in many entries to edit the model's collision.

shibboleet
Posted on 03-03-15 09:44 PM Link | #57193
Run a script.

____________________
a

KoopaTroopaMan
Posted on 03-03-15 09:45 PM Link | #57194
There isn't a script for that, or is it?

shibboleet
Posted on 03-03-15 09:46 PM Link | #57195
There isn't one. Learn something like python and write one.

____________________
a

KoopaTroopaMan
Posted on 03-03-15 09:48 PM Link | #57196
Isn't it just easier to make a multiple select function than make a script?
Pages: 1 2 3

Main - Archived forums - General SMG hacking - Whitehole v1.1.3 Release! [All New!] Hide post layouts | New reply

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