Sonic and Sega Retro Message Board: SADX/SA1 Hacking/Modding - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
  • 168 Pages +
  • ◄ First
  • 143
  • 144
  • 145
  • 146
  • 147
  • Last ►
    Locked
    Locked Forum

SADX/SA1 Hacking/Modding Now with more research and development!

#2161 User is offline Dude 

Posted 04 October 2014 - 11:18 AM

  • 3ds MAX Help Desk
  • Posts: 3095
  • Joined: 11-September 04
  • Gender:Male
  • Location:Southbridge, MA
  • Project:Sonic Adventure Generations
  • Wiki edits:43

View PostLanzer, on 04 October 2014 - 10:58 AM, said:

View PostDude, on 22 July 2014 - 10:56 PM, said:

MainMemory and I have been trying to work towards 2 goals:

- Optimize SADX model output significantly (it is pretty bad right now)
- Be able to generate SA2 meshes at all

Now this requires a Triangle Strip Generator, and I had limited success implementing one of my own (it garbled the mesh in some places, but worked in others) but unfortunately being a noob at git, I destroyed my only copy. Anyways, we're both pretty bad at C, and this program called STRIPE generates excellent triangle strips - but it also completely screws up the rest of the mesh data sent to it. We both tried looking into fixing it, but this program is above our level. What we need is someone who can either fix all of the problems with the program (you'll need to add vertex normal, uv and vcolor support). OR, someone (or a group of someones) to port it to C# so we can directly integrate it into SA Tools (this is probably the better option). Another solution would be for someone to write their own triangle strip generator into SA Tools (if you think you know how to do this and don't want to port STRIPE, contact me)

Once this is done, you should be able to import models with double or triple the polycount you can now. And not to mention this will make it so we can even *do* custom models in sa2. You know you want to!


You know I want to! :D

Wow man this sounds tight, so if you guys breakthrough with this what kind of models can we import?


Well, no one has offered to help us, so we haven't made much progress. I had something that was almost generating useful strip data from within SADXLVL, but due to a source control mistake I accidentally blew away that version. It actually seems more likely to me for an experienced d3d hacker to add support for new model types than it would be for us to get the originals working with full support.

However, to answer your question, having this would only mean that we can implement more complex models without the game slowing down. You may have noticed that in some areas of beta windy valley act 1 (specifically the part near the stairs) the game tends to get kind of slow. In SADX you can already import just about whatever you want, it's just importing the models in the most wasteful way possible. In sa2 however, that wasteful method of importing is no longer supported.

Actually, if we do manage to get a custom model format implemented, we could use a hybrid solution:
- visual models with strips imported with the custom format
- collision models imported from STRIPE/HTGEN output

This would make the levels have twice as many models, however each model exported would be as efficient as it could be. Considering that most modern games force this dichotomy between visual and collision meshes and I don't think it's the worst solution.

#2162 User is offline Pexs 

Posted 04 October 2014 - 04:48 PM

  • Posts: 130
  • Joined: 01-February 12
  • Gender:Male
  • Location:Around here somewhere.
Oh. I just remembered. The source for Brawlbox and Fiachra's SM64DSE (Super Mario 64 DS Editor) both use Tristrips.

In case you wanted examples, or something. Fiachra usually hangs out on the Kuribo64 forums (mostly focused on Mario game hacking). Brawlbox has been handled by quite a few coders, namely Kryal, Bero, Blackjax96, LibertyErnie, and SammiHusky. Blackjax and Sammi (who are the ones I'd recommend asking, if you ever need to ask for help) usually hang out on the KC-MM forums (mostly focused on Super Smash Bros. Brawl hacking). Blackjax himself would probably be best to ask to port code for you, but there's a fair chance he wouldn't. In any case, asking can't hurt, right?

#2163 User is offline Morph 

Posted 05 November 2014 - 05:47 AM

  • AKA SonicFreak94.
  • Posts: 698
  • Joined: 01-August 08
  • Gender:Male
  • Location:Utah
  • Project:SA1/2 hax
  • Wiki edits:11
While working on porting my changes in SADX Fixed Edition back over to the PC SET files, I realized SADXLVL2 doesn't retain the "clip" setting for each individual object upon save, thus nullifying one of the primary reasons for porting my changes over. Fortunately, I fixed that, and fixing the SET files won't be much of a problem with SADXLVL2's features. That's only related to what I figured out, though.

The "clip level" in the config file isn't just a clip level. It flat out permanently hides certain objects as opposed to changing the distance at which they're displayed. So I went through all of the commonly used values (as far as I know) in Emerald Coast, and they appeared to be 0x00, 0x10, 0x20, and 0x80.

When the clip value is 0x00, the object is always displayed. At 0x10, the object is only displayed on the furthest clip level ("high"). At 0x20, the object is displayed at the medium clip level and high, and at 0x80, the effect is the same as 0x00. Anything above 0x80 (128) will hide the object from all configurations. In terms of the effect in-game, in-between values round down to the lowest boundary (0x11 -> 0x10). Here's some images illustrating that:

EDIT: It honestly could be that these are "flags", but as far as I've seen throughout Sonic Adventure, there are no other flag values used other than the ones I specifically mentioned. Maybe they were used for debug mode stuff.

In each image, there are 6 item capsules, but not all of them display.

High (cliplevel=0 in sonicdx.ini):
Posted Image

Medium (cliplevel=1 in sonicdx.ini):
Posted Image

Low: (cliplevel=2 in sonicdx.ini. You can also see it does more than just adjust the draw distance; look at the windows!)
Posted Image

Figured this might be useful to somebody, as well as function partially a SADX:FE progress report. Some interesting stuff is afoot.
This post has been edited by Morph: 05 November 2014 - 06:56 AM

#2164 User is offline muteKi 

Posted 06 November 2014 - 01:03 AM

  • Fuck it
  • Posts: 7485
  • Joined: 03-March 05
  • Gender:Male
  • Wiki edits:91
Yeah, that's definitely the case; check out the fire hydrants in At Dawn on lower clip levels. (Actually you can't -- they don't show up!)

#2165 User is offline ShadowBlitz 

Posted 06 November 2014 - 11:50 PM

  • Posts: 11
  • Joined: 28-October 14
  • Gender:Male
So I figured I'd write up a relatively basic guide for getting stuff imported into SADX. If there's anything inaccurate or omitted, I'd definitely like to know.

SCHG_How-to:Import_Levels_Into_Sonic_Adventure_DX:_PC_Using_SADXLVL2
This post has been edited by ShadowBlitz: 06 November 2014 - 11:51 PM

#2166 User is offline Woofmute 

Posted 26 November 2014 - 06:41 PM

  • Y and -Y and XYZ-X-Y-Z.
  • Posts: 169
  • Joined: 22-December 08
  • Gender:Female
  • Project:Hacking and researching Rez.
  • Wiki edits:1
Found a new little thing in the initial Japanese release of Sonic Adventure.
These are addresses in RAM. (Use 2C instead of 8C for Demul and Cheat Engine)

8C84F4C4 Current Menu ID
8C84F4C8 Previous Menu ID
8C84F4D4 Hedgehog Hammer title when 01 (nothing else)
8C84F4D8 Next Menu ID

00 TGS Mode
01 Char Select
02 File Select
03 Trial Mode (Sub Game?)
04 VMU Select
05 Sound Test
06 Title
07 Main Menu
08 Options Menu
09 "Game Bug" screen
0A Trial Mode (Levels?)
0B TGS Mode
0C TGS Mode
0D Normal loading screen
0E Black screen
0F Black screen
10 Black screen
FF TGS Mode



The "Game Bug" screen isn't something I've seen before.

Posted Image

Currently, pressing A, B, X or Start takes you to the character select screen. And that's all I've found with it.
Other controllers don't seem to have any affect on this.

And again, TGS mode seems to use a different location in RAM for it's menu ID's. I want to figure this out because it might lead to finding more menus in the Autodemo.

EDIT:

8C7A97D0 TGS Menu ID
8C7A97E8 Title Timeout Countdown

00 Dev Level Select
01 Title
02 Now Loading
03 White Loading to 09
04 White Loading Screen
05 White Loading to 10
06 White Loading Screen
07 White Loading to 10
08 Now Loading
09 Character Select
0A Goes to 00
0B Goes to 00
0C Station Square
0D Chao Garden SS
0E Goes to 00
0F Black loading to title demos
10 Tutorial 1
11 Tutorial 2
12 Goes to 00
FF Goes to 00

This post has been edited by Jakeford: 26 November 2014 - 07:17 PM

#2167 User is offline Morph 

Posted 14 February 2015 - 03:36 AM

  • AKA SonicFreak94.
  • Posts: 698
  • Joined: 01-August 08
  • Gender:Male
  • Location:Utah
  • Project:SA1/2 hax
  • Wiki edits:11
SA Tools (but mostly SADXLVL2) update!

Funny story. So back before SADXLVL required you to split all of the data out of SADX, a majority of the objects in most stages displayed (e.g rings, dash panels, etc). I initially set out to get those same objects displaying in SADXLVL2, but I got a little sidetracked...

New SADXLVL2 features:
  • A new "Quick Start" dialog has been implemented which displays all your recent projects. It opens at startup, although it isn't yet configurable.
  • A new level select dialog also opens immediately after that. It is a level editor, after all.
  • When importing, exporting, saving, or loading a stage, a progress dialog is displayed instead of the whole program just hanging until it's done.
  • When importing any models, assuming your texture names match those inside the PVM, the textures will be automatically assigned to the materials for those models.
  • When any object (that doesn't have a code file) fails to load a model or a texture, the program will log those objects and tell you what's wrong instead of just throwing an exception.
  • Many of the objects that displayed in the old SADXLVL now display in SADXLVL2, albeit not entirely correctly (as some require code files, and this is where I got lazy).
  • Camera pan, zoom, object translation and transformation speeds can all be adjusted by pressing + or - on your numpad.
  • You can import multiple models (OBJ, nodetable) simultaneously.
  • You can change character item layouts by pressing Control+Tab, Control+Shift+Tab, or by clicking their icons on the upper right of the window.
  • When editing materials, you can cycle through all the textures in the material by pressing Control+Tab or Control+Shift+Tab.


Bug/efficiency fixes:
  • Significantly increased performance by enabling hardware processing and not re-drawing the scene twice because there's a gizmo onscreen :v:
  • You can now resize the window and retain the ability to click on things in the scene.
  • All changes made in the material editor now display in the scene immediately upon change.
  • When changing the texture in a material using the material editor, the currently assigned texture is selected so you know where you are, so to speak. This feature has been around for a while, but it was left incomplete--I just cleaned it up and got it working.


General SA Tools changes:
  • Changed directory structure of split objects and such. If you update SA Tools in an existing project, you will need to re-split.


I feel like I'm forgetting something. Either way though, I'm still working on things, so expect bugs (or debugging features I forgot to remove), but also more features!

Download here
This post has been edited by Morph: 14 February 2015 - 10:23 PM

#2168 User is offline ShadowBlitz 

Posted 17 February 2015 - 03:45 PM

  • Posts: 11
  • Joined: 28-October 14
  • Gender:Male
Oh man, I really do have to mess with this later. The multi .obj import makes some things I was doing a lot more convenient and the other changes sound very, very nice.

But am I the only one who gets a corrupted SA Tools.7z though? It could just be me, but it doesn't seem to open/extract with winrar or 7zip itself even. Regardless, when I'm done with exams this week I'll probably put some time into working on something or other with this.
This post has been edited by ShadowBlitz: 17 February 2015 - 03:45 PM

#2169 User is offline MainMemory 

Posted 17 February 2015 - 04:27 PM

  • Every day's the same old thing... Same place, different day...
  • Posts: 3727
  • Joined: 14-August 09
  • Gender:Not Telling
  • Project:SonLVL
  • Wiki edits:1,339
Sorry about that, my auto-build program crashed mid-upload. I re-ran it and everything should be fine now.

#2170 User is offline Morph 

Posted 21 February 2015 - 07:24 PM

  • AKA SonicFreak94.
  • Posts: 698
  • Joined: 01-August 08
  • Gender:Male
  • Location:Utah
  • Project:SA1/2 hax
  • Wiki edits:11


Another one of those cases where I tried to understand a function but just ended up rewriting it :eng101: (see also: xinput mod)

It's a lot of fun to play around with. It's really hard to get a lot of air time though, because everything is very much considered solid in SADX (For example: if you stand still and let animals force you to collect them, they actually will nudge you a little bit). In some cases (which show up in the video), hitting an enemy or capsule at just the right angle will send you ricocheting in some random direction. If I could fix that, maybe it'd work out better.

I actually started working on this in SA2, and I could very likely complete that, but I don't think there are as many opportunities to use it in SA2 in comparison to SA1 as a whole... which isn't to say SA1 has very many in the first place.

Related: This is part of the same hack I'm putting together. Did this a year and a few days ago.



The layout was just so that I could test it out. But, water running! Fun!

Edit: Curse you, />!
This post has been edited by Morph: 21 February 2015 - 07:25 PM

#2171 User is offline Morph 

Posted 25 April 2015 - 06:29 AM

  • AKA SonicFreak94.
  • Posts: 698
  • Joined: 01-August 08
  • Gender:Male
  • Location:Utah
  • Project:SA1/2 hax
  • Wiki edits:11
I enabled texture filtering for the GUI. Looks much better. Might be coming soon to a hack or mod loader update near you.

#2172 User is offline chaoscollector 

Posted 11 June 2015 - 12:21 PM

  • Posts: 14
  • Joined: 10-June 15
Hey guys, fairly new at this! Used to hack the game years and years ago but have only just begun to do so again, though I'd start by checking out SA Tools and I'm sure this will be an incredibly simple answer but why do most models with custom PVMs appear transparent in SADXLVL2? I vaguely remember this happening in the original SADXLVL but I think I overcame it by just clicking a model (this would usually make its texture appear)
Not necessarily urgently looking for a fix since I can always just use the original PVM and edit the level before the textures but just wondered why it happens? Thanks in advance!

#2173 User is offline Dude 

Posted 11 June 2015 - 12:37 PM

  • 3ds MAX Help Desk
  • Posts: 3095
  • Joined: 11-September 04
  • Gender:Male
  • Location:Southbridge, MA
  • Project:Sonic Adventure Generations
  • Wiki edits:43
screenshots?

#2174 User is offline MainMemory 

Posted 11 June 2015 - 12:40 PM

  • Every day's the same old thing... Same place, different day...
  • Posts: 3727
  • Joined: 14-August 09
  • Gender:Not Telling
  • Project:SonLVL
  • Wiki edits:1,339
If I had to guess, either the tool you used to make your PVMs is buggy, or Puyo Tools (which SADXLVL2 uses to read PVMs) is buggy. Can you view the textures in PVMEditSharp (in SA Tools)?

#2175 User is offline chaoscollector 

Posted 11 June 2015 - 01:00 PM

  • Posts: 14
  • Joined: 10-June 15
Posted Image
Shows up like this!

And Just gave it a try with PVMEditsharp, sure enough all edited textures came up transparent, which I'm assuming means the PVM tool was buggy right? This is a PVM from years ago I'm using so it wouldn't surprise me if that's the case!

  • 168 Pages +
  • ◄ First
  • 143
  • 144
  • 145
  • 146
  • 147
  • Last ►
    Locked
    Locked Forum

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users