Jump to content

Multiplayer: Difference between revisions

accurate
(→‎Original multiplayer: oh well, one section at a time)
(accurate)
Line 19: Line 19:


==Fake multiplayer==
==Fake multiplayer==
Oni Team Arena. Developed by [[User:geyser|geyser]], after an "Unreal Tournament" attempt by [http://script10k.oni2.net/ Script10000], with help from [[User:Your_Mom|Your_Mom]] and [[User:EdT|EdT]]. Emulates multiplayer-like gameplay with respawning bots, meant to experiment with advanced modding, multiplayer-oriented or not (e.g., AI or collision upgrades). Project page [[AE:OTA|HERE]]. Currently more or less maintained by [[User:Gumby|Gumby]], but don't hold your breath (ADD, scope creep, whatever).
Oni Team Arena. Developed by [[User:geyser|geyser]], after an "Unreal Tournament" attempt by [http://script10k.oni2.net/ Script10000], with help from [[User:Your_Mom|Your_Mom]] and [[User:EdT|EdT]]. Emulates multiplayer-like gameplay with respawning bots, meant to experiment with advanced modding, multiplayer-oriented or not (e.g., AI or collision upgrades). Project page [[AE:OTA|HERE]]. Currently more or less maintained by [[User:Gumby|Gumby]], but don't hold your breath (ADD, scope creep, whatever). In fall 2008, the Mac engine was brought on par with the PC engine, with [[BSL]] functions such as [[chr_focus]] and [[chr_location]], which opened the way for a platform-independent and fully featured version of OTA.


Apart from gameplay videos such as [http://www.youtube.com/watch?v=rV1j0q63KFg THIS] one, a remarkable scene (heartwarming and disturbing at the same time... [[User:Geyser|geyser]] 04:13, 6 October 2008 (CEST) ) is that of [http://www.youtube.com/watch?v=x5SgCZpY-wo Russian kids playing Oni Team Arena and enjoying themselves tremendously].
Apart from gameplay videos such as [http://www.youtube.com/watch?v=rV1j0q63KFg THIS] one, a remarkable scene (''heartwarming and disturbing at the same time... [[User:Geyser|geyser]]'') is that of [http://www.youtube.com/watch?v=x5SgCZpY-wo Russian kids playing Oni Team Arena and enjoying themselves tremendously].


==Fan-made multiplayer==
==Fan-made multiplayer==
Line 28: Line 28:
OniPlayer was a project coordinated by typhen and involving [[User:Alloc|Alloc]], [[User:Kumo|Kumo]], and [[User:ssg|ssg]]. Up to the departure of typhen, the project remained in the address-finding phase, with applications limited to Alloc's OniTrainer and typhen's OniFly (the Trainer allowed the user to set or freeze most of the known variables on demand, whereas OniFly performed elaborate freezing on character positions based on their aiming vector). Later, [http://neonew.oni2.net neonew] put the knowledge to use with OniHook, actually tracking and patching a character's animations as if synchronizing action over a network.
OniPlayer was a project coordinated by typhen and involving [[User:Alloc|Alloc]], [[User:Kumo|Kumo]], and [[User:ssg|ssg]]. Up to the departure of typhen, the project remained in the address-finding phase, with applications limited to Alloc's OniTrainer and typhen's OniFly (the Trainer allowed the user to set or freeze most of the known variables on demand, whereas OniFly performed elaborate freezing on character positions based on their aiming vector). Later, [http://neonew.oni2.net neonew] put the knowledge to use with OniHook, actually tracking and patching a character's animations as if synchronizing action over a network.


Current knowledge of Oni's game-state and character-state structures is very nearly sufficient for multiplayer, combining memory watching and patching driven by Oni's own events, hooked for the purpose. Current development includes for minimal patches to the engine (implementing stuff like [[chr_focus]] and [[chr_location]] for the Mac, disabling [[MELE]] loss for dying characters so as to take advantage of Oni's frag/damage counters, making Oni's combat stats accessible from [[BSL]], ...) and [[AE:Flatline|Flatline]].
Current knowledge of Oni's game-state and character-state structures is very nearly sufficient for multiplayer. Implementations can combine memory watching and patching, and can also be driven to some extent by Oni's own events, hooked for the purpose. Current developments include the [[AE:Flatline|Flatline]] experiment (an external patcher) and the [[Daodan DLL]].
 
Some multiplayer-related features are actually present in Oni, such as "combat stats" (frag and damage counters) for every character. These combat stats are not yet accessible from [[BSL]] and so are not put to use in OTA; another problem is that dying AI lose their [[MELE]] profile, so that bots can't keep fighting after they've been fragged. An experimental fix for the latter exists, but it hasn't been implemented in a public release of the Daodan DLL as of 05:16, 8 November 2008 (CET).