Not loading new dll (quake4) - ERROR: This mod is for singleplayer only

Started by Chrissstrahl, December 28, 2017, 04:15:02 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Chrissstrahl

This is about quake4.

I have made changes to the code so it does compile in MS Visual Studio 2015 and I get a dll.
So it looks like it should all work, but it does not. The dll that i create is not loaded by the game.

I want to make a Multiplayer Mod (I know it is dead, but I don't care).
If I make any changes on the game and start a Multiplayer Server from with in the game Menu, i get the Error Message that reads:
QuoteThis mod is for singleplayer only

If I delete a few files and revalidate via steam it works again (sometimes, if does not damage the fake cd-key in the process).
Again, I want to state, that this is Error Message is not from any of my dlls.

I don't remember quake4 making so much troubles 10 years ago, is it the steam version ?
I would really much appreciate, if someone could give me a few pointers on how to get a own mod working.
This is very frustrating and not at all worthy of anyone's time, so I want to avoid this issue in the future.
The Compiling of the code and the actual changes to the code, are not the problem for me at this time.
I am not sure if this is the right section, to post this in.

Snehk

Sorry fot a bit late reply, things move slowly around here.

This may be caused by the Steam version, but I haven't done much Quake 4 modding so I'm not your best bet when it comes to solving this issue. I could check if the error occurs on a cd version if you wish.

Chrissstrahl

Thanks, a project like this will take months, so a few days wait dosen't really hurt ;)

I will try the disk version my self anyway, so there would be no point in having two people test it.
I also think I will develop using the disk version, as I don't like all the issues I get with the steam version.

Can you give me some details for these questions ?
Just pretend they are for Doom 3, if it dosen't work out I will notice.
- How would I best start to make a multiplayer mod ?
- Unzip the pk4 ? So that I don't have to make a pk4 each time I change files
- Any commands that I should know while testing, like developer/cheats/tools

Snehk

I think that general mod development tips should work here. Write down all your ideas (if you haven't already), focus on those that can be done quickly and without (too much) effort, then move on to harder things that'll take longer to implement. I'm not really experienced when it comes to multiplayer mods, as I've been always more into asset creation/singleplayer side of things. You may try to get in touch with creator of Mars City Security mod, a lot of great work was put into it and you may receive a great deal of information about engine's netcode, or how it's development began.

Having to make a .pk4 all the time whenever you make a smallest change in files is really tedious, so unzipping them will be a time saver in the long run. There should be no issues with running the game/mod on unzipped files, and you'll have a bit easier access to everything.

A full list of useful commands can be found on idDevNet (sadly, pages dedicated to Quake 4 are no longer available, Wayback machine could be used to retrieve some information). Here's a direct link to commands page: Making Doom 3 Mods: Useful Commands (luckily Doom 3 pages are still there!).

Chrissstrahl

Thank you, that is good advice.
Most helpful information, I think I can start with that.
:)

Snehk

Good luck with your mod! Don't hesitate to show us any WIP screens too if there'd be anything worth posting.

Chrissstrahl

I think I know now what is causing it, after reading a little.
I guess it is not steam, it is because id-Tech 4 works different from what I am used to:
https://www.iddevnet.com/doom3/code.php
QuoteAll the clients are actually running the exact same game code as the server, so in theory they should never get out of sync, but as well all know, they do get out of sync.

I am assuming that I need to do something that I did not.
Probably compile client and server dll, so that they match, or something like that.