• Half-Life 2: Sandbox on Indefinite Hiatus, Releasing Source Engine Lua SDK
    22 replies, posted
[QUOTE=andrewmcwatters][img]http://hl2sb.googlecode.com/files/Half-Life%202%20Sandbox%20Title%20Logo%2048%20pt.png[/img] Hey SPUF, my name is Andrew McWatters, and I'm currently putting my mod, which you probably haven't heard of, on hiatus. That's not the important part. I'll get to the important bit in a second. Since I'm working with a friend on a multiplatform 2D game as my main project now, I feel like I should provide my source openly to developers who are spending their time on the Source SDK. Half-Life 2: Sandbox is a Source Engine modification which aimed to be a free sandbox game, and would have gone on to include a campaign on top of it's already present multiplayer functionality, if I were to continue development. This mod is built on top of my Source Engine Lua SDK, which provides an extension to the Lua C API to be integrated with the Source Engine. The Lua SDK features: Gamerule Hooks Gamemodes Runtime generated ConVars and ConCommands Runtime generated weapons Runtime generated entities Several game logic and engine logic libraries for usage in Lua scripts and much more! Additionally, Half-Life 2: Sandbox includes a heavily modified Prototype Physics Manipulator, whose source code is also included, as well as game mounting through Steam's API, rather than the filesystem class, and some other various still-unpublished Source Engine bugfixes in the 2007 build. Some of those bugs are: Machine gun derived weapons not bobbing SMG grenades not using a proper smoke trail Thirdperson animations This mod was clearly inspired by Garry's Mod, and after having worked with GMod for over 5 years, I wanted to create a Source Engine mod which would be more flexible. Regardless of the game not having been fully completed, I believe I have reached that goal. The source code to Half-Life 2: Sandbox, which includes the Source Engine Lua SDK can be found here: [url]http://code.google.com/p/hl2sb-src/[/url] The mod itself can be found here: [url]http://code.google.com/p/hl2sb/[/url] If you're lost, and don't know where to begin looking, here are some core files to check out: [URL="http://hl2sb-src.googlecode.com/svn/trunk/src/game/shared/luamanager.cpp"]luamanager.cpp[/URL]/[URL="http://hl2sb-src.googlecode.com/svn/trunk/src/game/shared/luamanager.h"]h[/URL] [URL="http://hl2sb-src.googlecode.com/svn/trunk/src/game/shared/hl2mp/weapon_hl2mpbase_scriptedweapon.cpp"]weapon_hl2mpbase_scriptedweapon.cpp[/URL]/[URL="http://hl2sb-src.googlecode.com/svn/trunk/src/game/shared/hl2mp/weapon_hl2mpbase_scriptedweapon.h"]h[/URL] [URL="http://hl2sb-src.googlecode.com/svn/trunk/src/game/shared/basescripted.cpp"]basescripted.cpp[/URL]/[URL="http://hl2sb-src.googlecode.com/svn/trunk/src/game/shared/basescripted.h"]h[/URL] [URL="http://hl2sb-src.googlecode.com/svn/trunk/src/game/shared/hl2mp/weapon_physgun.cpp"]weapon_physgun.cpp[/URL] (Shared code, meant for multiplayer) [URL="http://hl2sb-src.googlecode.com/svn/trunk/src/game/shared/hl2mp/weapon_physgun_valve.cpp"]weapon_physgun_valve.cpp[/URL] (Shared code, meant for multiplayer, and does not include ARGG code, or HL2SB changes) Additionally, all lua bindings will be in files prefixed with the letter l, following the same name of original file where the functions or respective class bindings will be found. Example: bindings for CBaseEntity (shared) would be in lbaseentity_shared.cpp/h, as the functions are found in baseentity_shared.cpp/h If you need assistance with using the Source Engine Lua SDK, I would be more than happy to assist you in most cases. Thanks for reading, Andrew McWatters (mcwattersandrew@gmail.com)[/QUOTE] [b]Original Thread:[/b] [url]http://forums.steampowered.com/forums/showthread.php?t=2167331[/url] [b]Mod note:[/b] Sorry if this is inappropriate, I'd just like to get this out to Facepunch as well. I figured this would be better here than Programming. [b]Footnotes:[/b] *No, the 2D game in question was not [URL=http://www.facepunch.com/threads/1131269]Knight Game II[/url], though I admit KGII is an incredible game. *Half-Life 2: Sandbox started out on FP as a way for me to dip into the Source Engine fast, and create a more flexible sandbox game. I started on this when I was ~17, and finished the core API of the game in just a few days time. Without knowing C/C++ beforehand. Some people said it was a stupid idea, but I eventually got the game to include more libraries than GMod, become more flexible, and use LuaJIT, something GMod was unable to use (presumably) due to its own dialect preventing it from being merged. I learned a lot about the Source Engine in the ~1 year time I worked on the mod, and I think it was a personal success. In my eyes, I wrote something that took Garry ~5 years to get around to polishing up, in a fraction of the time. I even had forwards compatibility working, but then later dropped it because I wanted my mod to not catch DarkRP disease if it had, optimistically, been that successful. I may, in the future, come back to this mod and work on it with a different engine build when Valve gets around to updating the SDK. For now, I'd like to build my own 2D game and see where that goes. It was fun.
Terrible to hear that it's going on hiatus, but I'm glad that if somebody knows they're not going to work on a mod, they'll release their source code they worked so hard on. I wish other mods would do that.
So your making KnightGame III!?!
[QUOTE=DesolateGrun;32721024]So your making KnightGame III!?![/QUOTE] :shh: [editline]10th October 2011[/editline] [img]http://i.imgur.com/WjXUO.png[/img] I am making something, though.
[QUOTE=amcfaggot;32721279]:shh: [editline]10th October 2011[/editline] [img]http://i.imgur.com/WjXUO.png[/img] I am making something, though.[/QUOTE] Physics? That means the horses fly away when punched!
It's really sad to see your project go on hold, I hope you finish it someday [sp]until that day youre just a stupid quitter quitter chicken dinner[/sp] Is Knight Game III really going to take so long that you can't work on HL2:SB?
[QUOTE=Kopimi;32722035]It's really sad to see your project go on hold, I hope you finish it someday [sp]until that day youre just a stupid quitter quitter chicken dinner[/sp] Is Knight Game III really going to take so long that you can't work on HL2:SB?[/QUOTE] I'm actually working on my own game at the moment. The amount of code I've written tonight would actually allow me to write Knight Game II/III with physics, a dynamic skybox, and more stuff. Kinda neat stuff goin' on here.
Looks great. I'm glad you released the source, I've been looking for some source source (:v:) to take a look at.
The only thing is, if and when it was out, and if it in fact worked out better then my expectations, that may actually do you in, I don't know if this is a challenge to Garry, but I interpret it that way. [QUOTE]This mod was clearly inspired by Garry's Mod, and after having worked with GMod for over 5 years, I wanted to create a Source Engine mod which would be more flexible.[/QUOTE] I like building stuff, but what makes GM is the Stools. People use GM for animation too. If this Sandbox thing could be used a lot easier to do animations, then I would look into it, but I no longer look at GM as a sandbox mod. I look at it as a game with access to other online games. The only thing is, as it stands, GM is well-known, and has existed for some time now. Because of that, if the mod is in fact on par to GM's level, I have to wonder how long it would take for there to be servers with active players building, film making, racing, RPing, surfing, zombies, amusement parks, and everything else using it.
[QUOTE=npx190;32725229]The only thing is, if and when it was out, and if it in fact worked out better then my expectations, that may actually do you in, I don't know if this is a challenge to Garry, but I interpret it that way. I like building stuff, but what makes GM is the Stools. People use GM for animation too. If this Sandbox thing could be used a lot easier to do animations, then I would look into it, but I no longer look at GM as a sandbox mod. I look at it as a game with access to other online games. The only thing is, as it stands, GM is well-known, and has existed for some time now. Because of that, if the mod is in fact on par to GM's level, I have to wonder how long it would take for there to be servers with active players building, film making, racing, RPing, surfing, zombies, amusement parks, and everything else using it.[/QUOTE] A huge part of the project which has been left unreleased was a Lua-driven animation tool called Choreographer. It was going to be used to make trailers and commercials for the mod. The user-interface for Choreographer was easier to use than Source Filmmaker, and in some ways, was also more powerful, granted there were no rendering tricks for it (motion blur, etc). It was the only part of the project not released, besides the cloud addon feature (an online platform for uploading addons, updating them, and distributing updates for them to gamers), which was to accompany the already present dynamic addon loading (you could load and unload plugins at any time, without having to switch maps, or restart the game). [editline]11th October 2011[/editline] One of the other subprojects which came out of HL2:SB, which is now released as a part of the source code, was SourceLua. [img]http://hl2sb.googlecode.com/files/SourceLua%20Title%20Logo%2036%20pt.png[/img] This was my answer to a LuaJIT powered Valve Server Plugin for other games, allowing you to use addons in games such as Counter-Strike: Source, Team Fortress 2, Half-Life 2: Deathmatch, even Alien Swarm, and other Source games, as it was compiled for multiple builds.
[QUOTE=amcfaggot;32727955]A huge part of the project which has been left unreleased was a Lua-driven animation tool called Choreographer. It was going to be used to make trailers and commercials for the mod. The user-interface for Choreographer was easier to use than Source Filmmaker, and in some ways, was also more powerful, granted there were no rendering tricks for it (motion blur, etc).[/QUOTE] A community-made SFM would've been kickass.
[QUOTE=amcfaggot;32721279]:shh: I am making something, though.[/QUOTE] Viking Game: Punch a Moose
[QUOTE=Max of S2D;32728471]A community-made SFM would've been kickass.[/QUOTE] agree x 45283429
[QUOTE=Max of S2D;32728471]A community-made SFM would've been kickass.[/QUOTE] I think you especially would have liked it due to the in-panel skeleton animating by assisted multiple actors on top of the keyframe system, with queued audio. There was also supposed to be in-game entity placed effects which could be triggered without actually having to cause something in the game to occur to create that effect in the first place (SFM). The coolest part, in my opinion, was the camera effects. Though Source has built in smoothing, this went beyond what's in Source.
You should use [release] tags in OP
I still got my custom lua serializer, [url=http://www.youtube.com/watch?v=mVjchSzoZzk]physgun, stool swep[/url], and file transfer system that wasn't released with this. I'll release my crap when my code becomes legible.
[QUOTE=amcfaggot;32732212]I think you especially would have liked it due to the in-panel skeleton animating by assisted multiple actors on top of the keyframe system, with queued audio. There was also supposed to be in-game entity placed effects which could be triggered without actually having to cause something in the game to occur to create that effect in the first place (SFM). The coolest part, in my opinion, was the camera effects. Though Source has built in smoothing, this went beyond what's in Source.[/QUOTE] oh god please finish this
[QUOTE=brandonsh;32735445]oh god please finish this[/QUOTE] The #1 reason why I'm putting the project on hiatus is because I have no mappers who will create decent, thought out work, to contribute to the mod. There's a lot of incompetency in the modding community, and only a very, very small fraction of developers know what they're doing. Additionally, those developers want to work on their own projects. Secondly though, I've done a horrible job with outreach, beta testing, and just getting the game out there in general due to taking the MIT approach on development. (See: [url=http://en.wikipedia.org/wiki/Worse_is_better]Worse is better[/url]) I put in so much work making the code phenomenal, that I didn't bother much up front with people playing the game, because I wanted to address that when it was completely done. Lesson learned, I'll pump out fast code in the future, and clean it up over time, focusing on my main end goals instead. Having this experience with this mod means I can write game logic rapidly and still have it clean, so that is a huge gain from HL2:SB.
nice looking forward to this
[QUOTE=amcfaggot;32739355]The #1 reason why I'm putting the project on hiatus is because I have no mappers who will create decent, thought out work, to contribute to the mod.[/QUOTE] As far as I can tell, you've never asked for mappers.
[QUOTE=ViralHatred;32915944]As far as I can tell, you've never asked for mappers.[/QUOTE] [url]http://www.facepunch.com/threads/1017411[/url]
"22nd October 2010" My bad, I was in hospital then. Had I known I'd have entered.
Great idea, even though this is a long way off: I hope this is compatable with Source 2 when that will (eventually) comes out! [highlight](User was banned for this post ("dumb bump again" - postal))[/highlight]
Sorry, you need to Log In to post a reply to this thread.