TWHL World - Community Project Created 8 years ago2016-01-13 21:39:11 UTC by Tetsu0 Tetsu0

Created 8 years ago2016-01-13 21:39:11 UTC by Tetsu0 Tetsu0

Posted 8 years ago2016-06-23 14:16:35 UTC Post #330577
Pre-planning had to be done. This was only one "set" of entities that I needed to duplicate & modify a number of times. :)
Posted 8 years ago2016-06-26 05:43:30 UTC Post #330611
Damn, this is a shame, I would have liked to participate in this project.

I haven't set up hammer in years but I've downloaded Sledge, Vluzacn's ZHLT compiling tools and Spirit 1.8a. Is anyone able to link me to a tutorial on how to configure these so that I can create a map suitable for this project?
Posted 8 years ago2016-06-26 11:49:52 UTC Post #330614
I think you just drop the dlls in your valve folder and set hammer to use the spirit fgd
Tetsu0 Tetsu0Positive Chaos
Posted 8 years ago2016-06-27 14:45:27 UTC Post #330623
Planning to work on my entry tonight then since we're still on. I'll be streaming again, aiming to start at 10pm BST through until midnight for anyone wanting to swing by and chat. :)

TWITCH BITCHES
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-06-27 15:30:47 UTC Post #330624
I'll try to be here, I'll check if you remembered how to pronounce my username correctly. :P
Posted 8 years ago2016-06-27 17:49:49 UTC Post #330626
Loo... low... lau leemy?
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-06-27 19:26:25 UTC Post #330628
Loo lee me ^^
Posted 8 years ago2016-06-27 19:57:46 UTC Post #330630
Gonna be 30 minutes late. Steam starts in just over half an hour.
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-06-27 20:01:28 UTC Post #330631
Why does it take so long? Mine starts in less than a minute...
Posted 8 years ago2016-06-27 20:17:57 UTC Post #330632
Because Steam is getting more bad Steam in it's Valve.

#StupidBadJokeOfTheYear
Posted 8 years ago2016-07-06 23:15:06 UTC Post #330724
Reading from this thread:

http://twhl.info/forums.php?thread=18954&page=last

Sounds like SOHL 1.9 is buggy, but 1.8 also is buggy??? Hard to make sense of the thread. Can someone please advise the latest bug free version of SOHL? Cheers
Posted 8 years ago2016-07-07 00:19:50 UTC Post #330725
Bug free Spirit? Hahaha, good one.

1.8a1 is the selected version for this mod I believe.
Posted 8 years ago2016-07-07 07:15:50 UTC Post #330726
Spirit 1.8 is used for TWHL World to be precise, I remade the barebones of the mod folders (still waiting for someone to test on WON and Xash3D btw).

Spirit looks promising at first, but when you use it and/or start diving into the source code, you want to smash some people in the face with the crowbar.

About that topic on changes between SoHL 1.8 and 1.9, I said that "multi_manager" were tweaked for some stuff and this could cause damage to maps that heavily depends on them. Furthermore, that SoHL 1.9 fog code is ugly and broken as hell, I would have used a very basic OpenGL renderer and added a "fog module".
Posted 8 years ago2016-07-07 11:20:46 UTC Post #330728
The code for Spirit is a mess, likely due to the number of different people who have worked on it. Even the "most stable" version comes with a couple of unclosed values in the FGD. Nothing catastrophic, but bad enough for some editors to complain.
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-07-07 16:53:45 UTC Post #330731
oh i didnt know this was still active! Now i konw i can make a map.
So whats the plan now?
Posted 8 years ago2016-07-07 17:22:55 UTC Post #330732
Just make your map, ask to be added to the Google Drive TWHL World folder to upload your entry, then someone will make the hub and the rest.
Posted 8 years ago2016-07-07 17:36:57 UTC Post #330733
I have found this repository called "Spirit of half life 1.0 Refresh" in Github:

https://github.com/Hammermaps-DEV/SOHL-V1.0-Refresh

What is this about? A rework on the old sohl?

Also according to github there is only 1 contributor. Is this the original author of sohl?
Posted 8 years ago2016-07-07 17:51:46 UTC Post #330734
Interesting find. I'm no developer, but based on what has been committed so far, it looks as though they are rebuilding the Spirit engine from the ground up. Simple stuff so far, uploading the Vanilla half-life SDK and renaming a few classes.

Gonna bookmark that and check from time to time. It's not been touched in nearly three weeks, but they might be doing a load of work locally before committing to the repo.
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-07-07 21:58:25 UTC Post #330735
At the time I'm writing this, this guy has :
  • Copied/pasted (without giving credits) a port of HL SDK to VS 2015 (and dropping the original VS 2010 support).
  • Copied/pasted custom relationship code from original Spirit.
  • Copied/pasted HL FGD for Jackhammer.
  • Added custom relationship code for monsters spawning from "monstermaker".
  • Added custom health and model for monsters code from original Spirit.
He's not the original author of SoHL, and looking at some commits, some parts of his code are ugly and you can see the same line a lot : "// SoHL Refresh 1.0". For non-programmers, it's a comment that tell "OH LOOKIE HERE, I CHANGED SOMETHING HERE".

UPDATE : I also hate how that guy is using Git, massive diffs in a single commit is a good way to lag everyone's PC when browsing GitHub with Opera/Chrome/Firefox/Edge/IE/Safari...
Posted 8 years ago2016-07-07 23:48:34 UTC Post #330736
I still think the first step to fixing/rebuilding Spirit is to fix the vanilla SDK file and class structure. It's an absolute mess.

I started doing something like that myself but it's a huge project and the code is incredibly messy, so I gave up pretty quickly.
Penguinboy PenguinboyHaha, I died again!
Posted 8 years ago2016-07-08 08:19:38 UTC Post #330742
Posted 8 years ago2016-07-08 10:58:12 UTC Post #330745
That's not just a random someone either, that's Solokiller who worked on Sven Co-op.
Penguinboy PenguinboyHaha, I died again!
Posted 8 years ago2016-07-09 07:54:29 UTC Post #330758
Yeah that was very unfortunate. He is a good and interactive developer.

And this is off-topic but I have to ask, will this lovely website close anytime soon? This is one of few websites which is dedicated to goldsource alongside source. If this will happen, I should backup at least tutorials with some tools like httrack. Is this allowed?
Posted 8 years ago2016-07-09 08:22:06 UTC Post #330759
@SSB: Yeah, I heard about that. Hopefully his new projects are even more successful!

@fuzun: Absolutely not going anywhere! I'm actually almost finished with a new version of the site so that it can keep running long into the future :) Modern and mobile and all that kind of stuff.

Please don't scrape the site (it slows the server down). Use archive.org instead. But it's not needed because TWHL will always stay online!
Penguinboy PenguinboyHaha, I died again!
Posted 8 years ago2016-07-12 11:52:11 UTC Post #330786
All those changes sound great! Any plans on cleaning up or modernising the AI stuff? It might be just because I'm an idiot but I can't for the life of me work out how to do even the simplest AI changes :(
Penguinboy PenguinboyHaha, I died again!
Posted 8 years ago2016-07-12 12:04:41 UTC Post #330787
@Solokiller : Once the server project is done, I'll update the Linux Makefiles (when I have the time)
Posted 8 years ago2016-07-12 12:51:05 UTC Post #330790
I think ease of use is the most important aspect. Right now adding a schedule or task involves modifying ten different spots and hoping that you've made the right changes to all the right things. It'd be nice if each task/schedule was able to be encapsulated in a small, self-contained function or class that just gets referenced in one spot. Not sure how manageable something like that is using the SDK.

Changing the base classes for NPCs is a good idea too. NPC coding seems like way too much copy/paste and there's way too much room for error. Maybe something more modular using pluggable interfaces/classes of some description. Would be cool to have something composable like: "class CBarney : CMonster, FriendlyMonster, TalkMonster ...". (Perhaps multi-inheritance isn't a good idea, but just some way to inject behaviour via re-usable classes, rather than copy/paste everywhere)

I think maintaining compatibility with HLSP would be a good idea if it's not too difficult to do - that's one of the things that people like about SOHL. I guess it depends on how much the compatibility would actually break: If it's only a small amount, and with proper documentation on the differences, I think most people would be able to handle it.
Penguinboy PenguinboyHaha, I died again!
Posted 8 years ago2016-07-12 13:51:44 UTC Post #330794
Well, worst case scenario i can just write a program to convert vanilla HL maps to the new format. The existing interfaces aren't that complex, and the lack of more powerful entities means you'll usually have a 1:1 mapping of features. For example, making all monsters hostile by default would require the keyvalue "Is Player Ally" to be set to true. For scientists, Barneys and Op4 grunts that's easy enough to do.

I'd use component based design for reusable code. As the principle goes, prefer composition over inheritance. Schedules and tasks could be components as well. You'd have an interface like this:

class CSchedule
{
public:
CSchedule( const char* const pszName )
	: m_pszName( pszName )	//Could be ALLOC_STRING'd here if dynamic creation is needed (e.g. Angelscript)
{
}

const char* GetName() const { return m_pszName; }
virtual int InterruptMask( CBaseMonster& monster ) const = 0;

virtual int GetSoundMask( CBaseMonster& monster ) const = 0;

virtual size_t GetNumTasks() const = 0;

virtual void StartTask( CBaseMonster& monster ) = 0;

virtual void RunTask( CBaseMonster& monster ) = 0;
private:
const char* m_pszName;
};

Obviously just a quick concept, but it would allow a given schedule to be defined entirely in 1 place. Monster specific schedules can cast their monster type to a specific one, providing identical power to the current version.

By providing the monster for the interrupt and sound masks, the results can be decided based on current conditions. That's potentially very powerful (e.g. stealth mechanics where the monster can't see the player -> don't interrupt).

You'd then only have to put these schedules into an array or hash map to use them. Name lookups or special schedule ID assignments could mimic current GetScheduleOfType behavior. It would also reduce the size of the monster classes themselves, and if specific properties are made components as well (e.g. Alien Slave beams), you could make entire attack modes into components as well. You'd almost have Lego block like monster building potential.

The only issue i see with this is memory usage. The engine doesn't like to share access to its memory allocator so you're stuck with the default heap. That's a few dozen megabytes you can't make use of. Add to that the 34 or so megabytes that are wasted for both the client and server secure library code (which is obsolete), assuming it's compiled into the libraries, and you've easily lost ~100 MB worth of space you could be using for this. Then again, considering some modern game engines use component based design, it might be just fine.
Posted 8 years ago2016-07-12 21:49:42 UTC Post #330796
Sounds great! That kind of system would make it so much easier to add new NPCs, which is one of the most common things people do in custom mods.
Penguinboy PenguinboyHaha, I died again!
Posted 8 years ago2016-07-13 02:01:24 UTC Post #330797
Not being a particularly competent programmer, I only really understood the high-level stuff for this, but it sounds quite useful for anyone still using goldsource - heck, it might convince a few people (maybe myself included) to come back for a spell!
Notewell NotewellGIASFELFEBREHBER
Posted 8 years ago2016-07-13 14:58:30 UTC Post #330798
I'd love to see Colony 42 (or some spin off based around it) get finished. :D
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-07-13 18:10:37 UTC Post #330803
Everyone always does this to me.
Notewell NotewellGIASFELFEBREHBER
Posted 8 years ago2016-07-14 05:00:49 UTC Post #330817
You unknowingly signed an unwritten contract.
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-07-15 00:03:07 UTC Post #330833
This might be a crazy question - how possible would it be to move ALL of the HL code into Angelscript? As in, all the entities, NPCs, weapons, and so on? I'm thinking about a SOHL-type project that lets you modify the game code without even needing to compile anything.
Penguinboy PenguinboyHaha, I died again!
Posted 8 years ago2016-07-15 05:51:18 UTC Post #330834
If you moved all of it over you would only have to implement the server's interfaces so they call scripts, everything else would be implemented in scripts. It's a fair bit of effort though, and i don't know if it will perform well.
Posted 8 years ago2016-07-16 15:10:31 UTC Post #330850
Back on topic, who take the lead on the project ?
Posted 8 years ago2016-07-16 18:26:33 UTC Post #330851
Unq, can you and do you want to do it? Otherwise I'll take care of the HUB map.
Posted 8 years ago2016-07-17 18:29:26 UTC Post #330862
Well I propose we perhaps work together Loulimi. I don't want to steal your thunder but I don't want to take on all the work at this point, but I'm willing to help out with the hub design and assembling the pack.
Posted 8 years ago2016-07-17 19:05:30 UTC Post #330863
Sounds good!
Posted 8 years ago2016-07-17 20:45:37 UTC Post #330865
Good luck to both of you ^^
Posted 8 years ago2016-07-17 20:48:26 UTC Post #330866
pql 4 confirmed
Posted 8 years ago2016-07-18 15:09:53 UTC Post #330877
Welp, I'll be working on my entry a little more tonight while streaming. In theory anyway. I have a bad track record for actually getting my stream up on time. Not to mention it is hot as balls here today, so my study will be even hotter...

What's hotter than balls you ask? The fucking SUN
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-07-18 17:38:51 UTC Post #330880
What's hotter than balls you ask? The fucking SUN
Having been on your island for a certain time, I'm surprised you know what it is. :P
Posted 8 years ago2016-07-18 18:20:57 UTC Post #330881
He must have read about it somewhere.
Posted 8 years ago2016-08-03 20:44:56 UTC Post #331072
Hi everybody! Loulimi and I are going to build the hub map and gather everything together and get this [Goldsource version, that is] out in the wild finally.

First, I want to take the pulse of the team and see who is still interested and willing to contribute a map. From going through this thread, here's everyone I could find (minus Tetsu0) that has posted showing interest in the Goldsource version:

[ ] Jessie
[ ] Strider
[ ] Themaster12234
[ ] potatis_invalid
[ ] Captain Terror
[ ] zeeba-G
:hammer: Loulimi
[ ] Big_rock.mdl
[ ] voyager
[ ] AJ
[ ] Urby
[ ] Shepard62700FR
[ ] 2muchvideogames
[ ] KB90
:hammer: Unq
[ ] Ubique

Your first assignment: please post here and let us know whether you're still going to make a map for this pack. I know some of you are still working diligently, but please also reply since I don't want to assume anything. Please post your interest/disinterest by Wednesday, August 10th.

Deadline for map submission: Monday, September 5th. This is a month away and for you Yanks it gives you Labor Day weekend to finish up.

Story: The basic story (credit Archie + Tetsu0) is the same as it's been:
A portal experiment is damaged and teleports the player and a gaggle of his or her colleagues (and a couple of Barneys for good measure) to a hitherto unknown alien border world. This border world forms the hub as the story sees the scientists urging the player to travel through various rifts in the hopes of finding a way home.

The objective of each level is to find SOMETHING to help the team get back to Black Mesa. So we need to bring energy sources, computer parts, raw materials, crystals, Big Momma's toenail...
So, if you have already chosen the SOMETHING the player needs to retrieve for your map, great. Please let us know what you've chosen in the post you make. If we need to we can choose for you.

What we still need to get to you: changelevel setups to and from the hub map. I'm not planning to incorporate any tidbits of your maps into the hub, but instead we'll have a screenshot on a monitor or projector or something to represent the portal to your map.

The player will be able to go from the hub to any map in any order; we're not going to force the player to complete a level to access the next one. Upon returning to the hub map after completing all levels, we will come up with some kind of finale battle. Loulimi has some good ideas already brewing for this.

In a few days I'll post the level transition setups and more info.
Posted 8 years ago2016-08-03 21:06:12 UTC Post #331073
Still working at this from time to time. Will definitely be done by September 5th.

My map focuses on the retrieval of a large pink crystal. :)
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-08-04 05:54:18 UTC Post #331077
I am currently working on a map based within Black Mesa that I don't think would integrate well with the story that has been proposed.

I'd still like to contribute but I would have to make a rather small map to get it done with only a month due to time constraints.

Do the levels have to be based in Xen or is it the hub map that will be based in Xen and the levels can be anywhere/anything?
Posted 8 years ago2016-08-04 06:15:13 UTC Post #331078
The levels can be based anywhere you like. Mine is set on an unnamed ice world. (One of my old projects that I threw out)
monster_urby monster_urbyGoldsourcerer
Posted 8 years ago2016-08-04 08:50:57 UTC Post #331079
Still working on my entry, I don't know yet if it will be a "kill a target", " item to collect" or something else objective.
Posted 8 years ago2016-08-04 12:12:42 UTC Post #331083
@Unq: I had sent a PM to Tetsuo about joining the project in February, although I hadn't posted in the thread because I couldn't guarantee an entry due to a lack of free time.
Same again now, I'm expressing interest and have the beginnings of a map but I've got repeat exams for college at the end of the month so I've got no time until then to work on it. It's up to you if you want to include me in the project.
Alabastor_Twob Alabastor_Twobformerly TJB
You must be logged in to post a response.