Discussion in 'Sega Dreamcast Development and Research' started by TerdFerguson, Jul 13, 2015.
The forum has just been back again. Maybe someone could help soon.
Not related to MP, but is audio on the DC version superior to the PS2-version? I'm replaying the game on PS2, but the voices are really low bitrate, and the room effects are horrible.
Perhaps, I had never compare with this ps2 version.
The last release dreamcast released by truemaster has the same models like the ps2 too.
For me only opposing force is better on ps2 because on dreamcast the add on had not be finished by developpers.
I hope you keep working on this, it would be amazing for the community if done!
Oh yes ! I hope too.
i've pretty much done and researched all i can do. it's up to other people with the skill to get down and dirty and bridge the gap between the open source extensions and the engine port we have. i'd bet money it can be done fairly easily
i've talked to an anon here and he might take a look mid-october. only downside is he has no reliable way of debugging. perhaps another anon here with a katana could help. i'd be pretty excited if this came to be, only problem is developmental interest in the dreamcast is not the same as it was back in, say, 2006-2010
Yeah it's difficult to find someone with the knowledge and skill...
Maybe Sizious could help.
kinda significant. that guy released the source code for that team fortress 2 goldsrc recreation. which is pretty much playable aside from having only one map http://www.moddb.com/mods/chicken-fortress-3/news/metarenderer-metaaudio-source-code
also shows you can add new renderers and stuff when using external libraries
found this over the course of a week. i have no internet so im writing this on a tablet and cant post pics
i found a significant amount of code for using client.dll on dreamcast
sub_37968 is the master subroutine that calls loc_379a8 (where the "cl_dlls\\client.dll" string is located)
the first xref to sub_37968 is sub274ac offset 68 ( sub_274ac+68 on IDA)
after sub_274ac+68 calls sub_37968, sub_274ac+6e executes sub_37a34
sub_37a34 then executes sub_19104
sub_19104 then executes sub_1adec
sub_1adec contains strings which are the same as the exports for client.dll like ResetHUD, HudColor, InitHUD (which i belive is the first thing called after the Initialize export function in client.dll but im not certain)
this shows there is extensive multi step code responsible for loading client.dll in the half life binary
i found more also
sub_44850 also calls sub_37968 from above, sub_44850 seems to be one of the master functions when the game engine initializes as it calls for gfx.wad, pallette.lmp (which hang the engine if are not present) as well as executing thr CFG files for binding controls, starting Direct3D etc
this means the code for loading client.dll is called during engine initialization of the engine
sub_29694 seems to be responsible for changing the gamedir and loading a new client.dll when specified by a server. sub_29694 also calls sub_37968 from above, which after that calls anothrr series of subroutines that lead back to sub_1adec that contain matching strings for the exports of client.dll
this proves an even deeper web of uses for the code calling client.dll, as the engine can seemingly dynamically load and unload dlls specified by the server
this should be looked at in greater detail by someone like @SiZiOUS and maybe try some memory patches and hooks to call the code ive detailed in this post
the command 'WC' does nothing, ive verified this in IDA, and the command 'bunny' prints "i miss ya betty" to console and nothing else. if someone attempts some hooks, thats the best place to start
before all this gets nuked, even though this was an autistic documentation of the entire engine
it still is totally true that if somebody bridged the gap between the mod dll files and the dreamcast engine which also uses windows it's 95% likely would allow complete engine control which would be a complete mindfuck, send the localhost traffic through the modem and call it a day
its true, its all there waiting to be done. FPS dips are because of polygon overflows and loadtimes are a moot complaint compared to MOST 8th gen games, online or offline
one thing i never mentioned here was i learned that the command line parameters i've harped on about so much in this thread are actually leftovers from the quake1 source code, and do not link to any kind of function, but their calls are still present, code can probably be hooked to use those for whatever we want since we also have control over the entire WCE OS that can spawn game instances to our personal configuration (multi mod discs)
big caves in the binary too for the custom code to reside....
I wonder if Ian Michael would take a look at it? He said he has experience with WinCE titles.
Separate names with a comma.