Half-Life engine access Created 1 year ago2016-07-13 17:19:11 UTC by Solokiller Solokiller

Created 1 year ago2016-07-13 17:19:11 UTC by Solokiller Solokiller

Posted 10 months ago2017-08-04 13:50:18 UTC Post #336713
Will not it be better to buy MsVC++ 6.0? I have seen copies for 60€ on AMAZON...


I think it will worth the money. ;)
Posted 10 months ago2017-08-04 13:56:30 UTC Post #336714
17 produces no warnings or errors on my end using your code.

Also, just use 17. No reason as to use a very outdated tool that costs a decent amount of money. 17 is FREE.
Posted 10 months ago2017-08-04 14:13:02 UTC Post #336716
MsVC++ 6.0 will be good only for compiling the outdated hl sdk. Solokiller's code is optimised for newer compilers and C++ standard (I think), so it should be used with newer IDE version. And as James Luke already pointed, Community Editions are free.
Posted 10 months ago2017-08-04 14:25:32 UTC Post #336717
It's just a matter of putting some work into maintaining such an old SDK.

Some people are lazy and don't want to put the effort in.

That's just my point of view.

Also, wouldn't you want to take advantage of the features modern C++ brings?
Posted 10 months ago2017-08-04 14:54:18 UTC Post #336718
Newer compilers bring bug fixes, faster compilation, improved bug detection and better optimizations in addition to newer C++ features.

C++20 may come with metaclasses to generate code at compile time, much like the work i'm doing to generate Angelscript registration code automatically. Stuff like the custom schedules macro would be part of a monster entity metaclass, which itself inherits from an entity metaclass that sets up everything an entity would need.

It would make all of my current efforts obsolete, so if VS2020 comes with it i'd upgrade in a heartbeat.

In the same way that C++11 has things like auto, smart pointers, cross-platform threading utilities, and C++17 has a cross-platform filesystem, every other version brings important new features.

C++20 is already slated to include compile time reflection, which on its own can be used for scripting if needed, as well as doing away with ugly macro based save/restore code.
As long as you can access user defined annotations you can mark anything you want and generate the data on startup, in a way that's so much more efficient than before that it makes Source look like GoldSource in terms of code quality.

Now compare that with VS6, which may fail to compile valid template code and has pre-standard C++ libraries that will break if compiled in newer versions. The old SDK didn't even compile in newer versions at all due to non-standard code relying on more permissive compilers.
Posted 10 months ago2017-08-04 15:02:29 UTC Post #336719
So C++20 will bring really cool stuff. Your work is already a godsend for people tinkering with hl code. Updating it to newcoming standard will make things even better.

I only wonder how much rewriting or how many minor tweaks it'd take to update it, and how many adjustments you'll need to do if metaclasses and code generation at compile time will come to implement AngelScript.
Posted 10 months ago2017-08-04 16:10:30 UTC Post #336720
Not much. Most of my time working on code generation has been spent getting the data in the right format to generate stuff, which reflection and metaclasses do for you.

Right now it's libClang->code processor->generator->Mustache templates, with C++20 it'd be metaclasses + reflection->generated code. Metaclasses is designed to use reflection as its main feature, so it'd be almost trivial. I think a good afternoon's worth of work would do the trick for basic API registration. A solid week would handle pretty much any generated code features.
Posted 10 months ago2017-08-04 21:05:52 UTC Post #336722
@James thanks I promise that I will learn about C/C++ but not much ( 10 % ? :/ ) Please do not worry! I will learn more...

@SoloKiller Thanks for different solutions! You're right.

Oh "Visual Studio 2020"? How did you get news? from Microsoft's blog? I never listen news. But please wait until final version! No beta or no rc!

// Edit: VS2020 sees like fake or real? But I already search Google. Do you think new user interface of Visual Studio 2020?
Posted 10 months ago2017-08-04 21:50:48 UTC Post #336724
Also, learn more C++, it's better to know more. There are a lot of things I still don't know about it, but everything I'm learning I try to use instead of arcane/old methods. It's just better.

Another things, I wouldn't trust the Images tab of Google for the interface changes in Visual Studio 2020, Microsoft will probably release more information over the years. And I'd bet on a new UI, but somewhat similar to the clean and crisp design of 17 and similar versions.

Every year or every few years Microsoft tends to release another version of Visual Studio, that could possibly land on 2020; and I'd place my bets on a 2020 version as well, it's just a simple number to remember.

Also, C++20 will most likely be a thing as well, since the C++ Standards Committee started talks on it already. I'm excited.
Posted 10 months ago2017-08-04 22:13:53 UTC Post #336726
I figure it'll be VS2020 but it could be VS2019 and VS2021 if they continue the 2 year release cycles as they have for the past few years.
Posted 10 months ago2017-08-05 00:10:02 UTC Post #336727
Probably; just wishful thinking.
Posted 5 months ago2018-01-14 15:02:55 UTC Post #338642
Does anybody know of any mods that could benefit from an updated engine?

I'm putting together a list here: https://facepunch.com/showthread.php?t=1577389&p=53051731&viewfull=1#post53051731
Posted 3 months ago2018-02-19 17:06:11 UTC Post #338851
If you mean to put here the ones we want...

I think that almost EVERY Half-Life mod out there pushed to use Xash3D because of engine´s limitations. But, as a list of mods I will add:

-Brutal Half-Life (all that stuff flying around, ragdolls...)
-Counter-Strike ( more detailed models, more entities...)
-P.O.V ( the same as above )
-Zion Warcry (yeah, you know it from inside)
Posted 3 months ago2018-02-26 10:06:48 UTC Post #338868
MSVC 6.0 sp6 has confirmed bugs, btw.

So, what's the question about "new HL engine"? Was something updated I missed?
My mod ( http://www.moddb.com/mods/xdm ) whould definitely benefit from expanded limitations, but... There's something impossible for HL engine to fix: for example, MAX_MAP_CLIPNODES, that are "limited" by the size of uint16 (as far as I remember) of the BSP format itself.

There are also limits that I doubt anyone ever will touch - like save/restore buffer size. Which causes crashes on overloaded maps like those from HC2. And lots and lots of other static srrays in the engine. :(
Posted 3 months ago2018-02-26 11:27:31 UTC Post #338869
I discussed this with the Sven Co-op team and Valve.

Valve has stated that this is not to be. Valve will not provide an updated engine, the Sven Co-op team is not permitted to support mods either. I've covered every possible option with Valve and there is no way we'll get this legally.

As for your problems, the only alternative will be to implement your own map format, and to make your own save format that ignores the engine. IIRC the Earth Special Forces team has done exactly that. It's not easy to make but it's the only way to bypass the limits.
Posted 3 months ago2018-02-26 13:20:18 UTC Post #338870
Thanks, I kinda expected that. :(
Anyway, my code base is getting further away from HLSDK, might as well do some save/restore hacking. But right now reducing S/R usage already helped alot (at least HC2 became playable once again).
the only alternative will be to implement your own map format
Yeah, I thought of it. And who would use that? :)
Posted 3 months ago2018-02-27 22:09:05 UTC Post #338880
Valve has stated that this is not to be.
Sigh!. :(
Posted 3 months ago2018-02-28 11:03:26 UTC Post #338887
the Sven Co-op team is not permitted to support mods either
Too bad - recent development I guess?
Posted 3 months ago2018-02-28 11:52:48 UTC Post #338888
Yeah, i managed to convince them but Valve wouldn't allow it.
Posted 3 months ago2018-02-28 19:09:08 UTC Post #338898
But I have sometimes bad news...

Valve Software is not original cowboy just is relative of Russians since I caught moderator of Steam community removes my thread about "Stop hacking everything".

I wait next 10 minutes and I check new messages and I open but it doesn't see where is my new message. That is why moderator removes thread because it is like advertising. But it is not advertising. He doesn't believe me. Than I remove my steam account now. I hate that.

Valve Software is really biggest liar because it doesn't allow to manage with illegal Half-Life Engine ( Xash Engine or Solokiller's Engine ) but I feel common because Valve Software and Russians work together.

Please believe me! I am sorry for bad news. Thanks....
Posted 3 months ago2018-02-28 21:09:34 UTC Post #338899
As I stated before, they are pissed because the padawan has proven to show more skills than the very master...
Posted 3 months ago2018-03-01 02:07:44 UTC Post #338903
What is SourceSkyBoxer saying?

Also, does this mean that valve will not allow anyone else access to the source code? So, we are stuck with only a coop enhanced version of goldsrc and nothing else?
Posted 3 months ago2018-03-01 10:09:56 UTC Post #338908
I don´t know what kind of favors did the SC team to the managers at Valve (think badly if you want), but the answer is YES. The only enhanced version of the HL engine was the one that SC uses, and, if we listen what Solokiller says, the work done with that version of the engine after Solokiller leaved the developer team can not be considered perfectly done.

Whatever. What Valve should not complain at was the fact that many modders still want to do HL1 mods; and because they want to do it, they should not complain about that those people search whatever tools they´ll need, and if the solution for the entitie´s limit problems is to use an engine done with GPL code (except for the VGUI part)done by a russian guy and which name is Xash3D, people will continue to do it and use that engine.
Posted 3 months ago2018-03-01 10:51:41 UTC Post #338909
@SourceSkyBoxer & @abbadon:

This is more of a legal issue, it would cost them to arrange all that and more to provide the source code.


He's complaining about a thread of his being removed somewhere.

This is Valve's exact statement:
Hey Solokiller, our concern isn't with the app ownership (which would be required) but with the indirection of the maintenance of the engine. Having another part produce an SDK for one of our game engines isn't something we will consider at this time.
It's unlikely that this will change while anybody has an interest in modifying the engine.
What i mean by this is that Valve probably won't even consider open sourcing the engine until there's no risk to current users, so the player base has to become virtually non-existent first. CS has ~25000 players on monthly so that's not happening any time soon.

Only the Sven Co-op team has the engine, and as far as i'm aware they won't add other game modes. I'm not aware of any custom game mode support, but there have been very recent (as in today) issues with C++ plugins injecting code into the game and breaking things, so perhaps somebody will bypass their restrictions.

I suggested using an AMXMod/SourceMod like plugin system managed by an open source library, but they didn't want to go for it.
It isn't meant for game mode stuff, but it would allow the community to provide new functionality such as SQL themselves. I've been told their own SQL API is being worked on, but i don't know the status of that.

As far as other modders go, there isn't much else you can do. Best case is you do what AMX does and redirect some engine functions and patch in some stuff to bypass limitations.

I may know of a way to increase the entity limit and engine heap that way, but i haven't tested it yet.
Unfortunately the engine is designed in a way that makes this difficult. I tried to convince Valve to give us something, anything to increase the limits but they won't go for it.
Posted 3 months ago2018-03-01 16:01:20 UTC Post #338911
So unfortunate. For me, maybe this is the signal to move on from Goldsrc. PVP hacks for SC aren't really cutting it. Xash3d/XT is fun to play with.... Yup, I will mess with the new version of that whenever it comes out or if it comes out.
Posted 3 months ago2018-03-01 22:17:03 UTC Post #338912
Thinking about how Xash3D is done(it is built upon GPL SDKs like the one of Quake and Quake2 and then making things from scratch figuring how things are done), maybe Xash3D could be considered a HL mod done to play HL mods (remember that it still uses the Valve´s original vgui.dll). Maybe if they release it as a mod there should not be any problems for the STEAM community to talk about Xash3D or any mod using the Xash3D mod, or much better, stop considering it illegal.
Posted 3 months ago2018-03-01 22:29:19 UTC Post #338913
If it can load Half-Life mods and play them and it isn't Valve's GoldSource engine, it's illegal. Unless Xash were loaded through GoldSource as a mod on its own it can never be legal. Even so Xash uses leaked code so it's illegal either way.
Posted 3 months ago2018-03-01 23:02:42 UTC Post #338914
Damn. Yes, it´s weird a mod loaded into a game to load other mods...
Posted 3 months ago2018-03-01 23:07:34 UTC Post #338915
That's what Metamod does, nothing weird about it. The weird thing is the mod taking over execution and becoming the engine in the process.
Posted 3 months ago2018-03-02 02:48:49 UTC Post #338917
Solokiller, what is the closest thing to Goldsrc that its engine is opensource? I apologize for my ignorance. Are you still working on HL Enhanced? What is your outlook on the future of GoldSrc or do you have plans for another engine?
Posted 3 months ago2018-03-02 07:29:47 UTC Post #338920
I think that id engines are the most closely related to GoldSrc, especially Quake and Quake 2 engines. Its forks like Darkplaces, FTEQW and Qfusion (not sure about this one) even support half-life map format and lots of other cool features. Half-Life's game logic was recreated in QC scripts a while ago as well.

Both Quake engine and its forks are completely open source, coming with full game logic available for download (QC scripts were released open source as well.)
Posted 3 months ago2018-03-02 10:21:33 UTC Post #338922
Quake 1, 2, 3 are all open source, but it's not like GoldSource since they don't use skeletal animation.

If you want something like that then an engine like Unreal or Unity may be best. They're free for hobbyists and modern enough to handle what you're throwing at them, though it won't be like GoldSource when it comes to mapping or look and feel.

I would recommend being careful using any engines that can support Half-Life because those have questionable legality.

I'm still working on HLEnhanced, at the moment i'm making the next version of model viewer so that's all wrapped up, then helping out the MSC team (they were counting on that engine unfortunately) and then back to HLE to wrap stuff up. I can still do some things with only game code and AMX's Detour framework so it'll still be pretty well upgraded.

The model rendering code used by the model viewer may be useful for HLE as well but i'd need to switch to shaders first for that.

It's a shame that we can't get anything more but that's how it is. Beyond this i'm not planning to do anything else. The stuff that's planned for HLE should be quite good on its own so hopefully it should suffice.

I think it's best to leave the whole engine thing as it is, because it's just a waste of time trying to change that.
Posted 3 months ago2018-03-02 10:34:08 UTC Post #338923
That's what Metamod does, nothing weird about it. The weird thing is the mod taking over execution and becoming the engine in the process.
Oh...yes...ok!. Sorry for being so ignorant! :crowbar:

As far as other modders go, there isn't much else you can do. Best case is you do what AMX does and redirect some engine functions and patch in some stuff to bypass limitations.
Of course I have read that it´s a bit difficult, but it will be great ;)
Posted 3 months ago2018-03-02 21:01:46 UTC Post #338927
Maybe Gearbox will open source the Nightfire engine. It's a shame it never supported mods but I don't think it changed too much from Half-Life to prevent easy porting (except for the lack of a good v14 studiomdl).
Posted 3 months ago2018-03-04 04:33:50 UTC Post #338932
Maybe Gearbox will open source the Nightfire engine.
Has anyone ever asked?
Posted 3 months ago2018-03-04 09:31:06 UTC Post #338934
I just did today: https://twitter.com/teamsandpit/status/970154610391330816
Worth a shot but no idea if they're even allowed to or not.

It would be a reasonable alternative though I think - it's already an improved GoldSource (no idea about engine limits but you get 32 bit textures and shaders).
It might be possible to rebuild the engine too - pretty hard to reverse engineer the Windows version (comparatively) but there was a Mac version which appears to have exported function names (but I don't have anything to open PowerPC Mac executables, nor am I sure if there is a decompiler for PowerPC mac executables).
Posted 3 months ago2018-03-04 16:14:26 UTC Post #338937
I don't think they are allowed.
rufee rufeeSledge fanboy
Posted 3 months ago2018-03-05 22:38:40 UTC Post #338945
Maybe not but it is worth a shot.
Posted 3 months ago2018-03-06 11:08:09 UTC Post #338949
I don't think they are allowed.
I wouldn't be surprised if they weren't (I guess it was developed under contract for EA so they may not own the engine as such).

Not sure how good Gearbox (or EA for that matter) are at releasing this kind of thing.
You must be logged in to post a response.