Author Topic: Client side mod problems.  (Read 8452 times)

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Client side mod problems.
« on: October 25, 2008, 02:48:29 pm »
Hi guys,

I've been hacking/modding around with the game code (server side) for almost a year and am quite experienced in what's where and the whole process with qvm's backports and what matches and what not.. I have been out of Tremulous modding (and also playing) for a few months, and I'm trying to pick it up again, this time trying to do some client-side modding. (cgame.qvm)
(just telling this ^ so you won't think I'm a complete noob.. :P)

So, I've checked out the latest rev. of Lakitu's svn and changed the game name in bg_public.h from "base" to "thomod", compiled the qvms and put the game.qvm in my server's base/vm/ and packed the cgame.qvm in a pk3 (thomod.pk3/vm/cgame.qvm) I've also put a texture in thomod.pk3/models/players/level0/level0.jpg just to test if it works. (ofcourse the thomod.pk3 is zipped..)

So I put the thomod.pk3 in ~/.tremulous/base/ and started the server with:
Code: [Select]
./tremded.x86 +set fs_game thomod +set sv_allowdownload 1 +devmap atcs

And connected my client, which autodownloaded the pk3 and it seemed to go well. But then I got a huge constant flow of warnings of missing textures etc. When looking around I saw the models missing and the hud.. (these warnings appeared on the client).

So I thought maybe it was the problem of the change in bg_public.h, maybe it wasn't needed at all.. So I changed it back to base and put the new game.qvm in the servers dir and the cgame back into the pk3 and tested again. It didn't seem to make any difference, still same warning flood.. (what i did notice is that the dretch texture i added into my pk3 WAS applied)

I've even tried to rename my pk3 to athomod.pk3 and zthomod.pk3 but it all makes no difference.. I feel like a noob, this fs_game GAME_NAME etc stuff is all kinda confusing..

So I hope someone can help me, sorry for the long post :P

(BTW: I removed the client's autodownloaded pk3 on every step so it had to download the new one from the server again everytime)

Syntac

  • Posts: 841
  • Turrets: +118/-104
    • Syntac's Stuff
Re: Client side mod problems.
« Reply #1 on: October 25, 2008, 03:47:15 pm »
thomod.pk3 probably didn't load because you put it in base/, whereas fs_game pointed to thomod/. Also, don't diddle around with the hardcoded stuff in bg_public.h, because weird things can happen. Just set fs_game and everything should work fine.

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Re: Client side mod problems.
« Reply #2 on: October 25, 2008, 04:00:15 pm »
Ah, ofcourse, gonna try it right now...

EDIT: Still the same, I get these kind of errors when the map has started:
Code: [Select]
^1ERROR: failed to register particle system models/weapons/lcannon/secondaryImpactPS
^1ERROR: impact particle system not found models/weapons/lcannon/secondaryImpactPS
^1ERROR: failed to register particle system models/weapons/grenade/impactPS
^1ERROR: impact particle system not found models/weapons/grenade/impactPS
^1ERROR: failed to register particle system models/weapons/hive/missilePS
^1ERROR: missile particle system not found models/weapons/hive/missilePS
^1ERROR: failed to register particle system models/weapons/rifle/impactPS
^1ERROR: impact particle system not found models/weapons/rifle/impactPS
^1ERROR: failed to register particle system models/weapons/rifle/muzzlePS
^1ERROR: muzzle particle system not found models/weapons/rifle/muzzlePS
^1ERROR: failed to register trail system models/weapons/lev2zap/lightning
^1ERROR: failed to register trail system models/buildables/tesla/zap

I have put both the game.qvm and the cgame.qvm into the vm dir in the pk3 (the thomod.pk3 is in ~/.tremulous/thomod/thomod.pk3 now)
and I've also put both qvm's in ~/.tremulous/base/vm/ and in ~/.tremulous/thomod/vm/ ...

Both qvm's are streight compiled from Lakitu's newest source.. This makes me think, is that cgame backported? could that be the problem?
« Last Edit: October 25, 2008, 04:23:07 pm by Thomsen »

Amanieu

  • Posts: 647
  • Turrets: +135/-83
    • Amanieu
Re: Client side mod problems.
« Reply #3 on: October 25, 2008, 04:41:55 pm »
data-1.1.0.pk3 not found?
Quote
< kevlarman> zakk is getting his patches from shady frenchmen on irc
< kevlarman> this can't be a good sign :P

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Re: Client side mod problems.
« Reply #4 on: October 25, 2008, 05:36:42 pm »
My client is the 1.1.0 download with tjw's tremulous.x86 (tremfusion's tremulous.x86 does the same), and it works on all other servers just fine..

I've tried to put data-1.1.0.pk3 inside the thomod/ dir on the server but that doesn't help (the client doesn't download it)

I've also tried putting the thomod dir in ~/tremulous (where my tremded is) and where it was in ~/.tremulous (this is all on the server, i let the client autodownload it), but both give the warnings on the client..

kevlarman

  • Posts: 2737
  • Turrets: +291/-295
Re: Client side mod problems.
« Reply #5 on: October 25, 2008, 05:58:11 pm »
that happens when you try to combine a 1.1 client and a cgame built for an svn client. you'll save yourself a lot of effort if you build cgame and game from the same source. unfortunately there is no easy patch to apply that will make a clean copy of svn compatible with 1.1 (you'll need to change the cgame (and possibly ui if you want that too) syscall table back to how it was in 1.1, and change the netcode back to the same size as 1.1)
Quote from: Asvarox link=topic=8622.msg169333#msg169333
Ok let's plan it out. Asva, you are nub, go sit on rets, I will build, you two go feed like hell, you go pwn their asses, and everyone else camp in the hallway, roger?
the dretch bites.
-----
|..d| #
|.@.-##
-----

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Re: Client side mod problems.
« Reply #6 on: October 25, 2008, 06:04:03 pm »
So the best thing to do while staying compatible with 1.1 clients is to get a recent svn and apply a backport for the cgame?

Lakitu7

  • Tremulous Developers
  • *
  • Posts: 1002
  • Turrets: +120/-73
Re: Client side mod problems.
« Reply #7 on: October 25, 2008, 06:17:21 pm »
At this point the only things available are to use one backport and build tree to make your game (game.qvm of your choice) and another seperate set to make your cgame and ui (http://releases.mercenariesguild.net/semipure_vms/bennmachine_jamesbosque_amanieu_lakitu7_risujin-backportcgame1044.patch).

The problem with this cgame/ui patch is that you're backporting game to work with 1.1 cgame, and cgame to work with 1.1 game, which when you're using them both together and forcing a cgame download is entirely redundant. However, the last port of all 3 intended for download servers is quite a bit older and as far as I know nobody has made a newer more appropriate cgame/ui backport.

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Re: Client side mod problems.
« Reply #8 on: October 25, 2008, 06:32:20 pm »
Ok, I'll do that. Thank you very much! :)

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Re: Client side mod problems.
« Reply #9 on: October 25, 2008, 09:23:49 pm »
Ok, before I tried the patch you gave me I found this patch on the patch tracker:
Quote
backport1044.patch: for mod makers, makes a 1.1.0 client compatible cgame, game, ui, and tremded. game is not compatible with 1.1.0 cgame, and ui.qvm is not compatible with 1.1.0 ui folder (I don't think) so you need a download if you want to use the vms

And that seems perfect, I think I only need one trunk this way??
So I tried it, checked out svn 1044, applied that patch ^, and used that game and cgame, only they don't seem to match with my server (tjw's tremded).
(I get the famous "ERROR: G_ParseSpawnVars: found ; when expecting {")

Should I use an svn 1044 server or so? Will that be compatible with 1.1 clients?

Or is this whole patch totally not what I'm looking for and should I do as Lakitu7 said?

kevlarman

  • Posts: 2737
  • Turrets: +291/-295
Re: Client side mod problems.
« Reply #10 on: October 25, 2008, 10:05:31 pm »
Ok, before I tried the patch you gave me I found this patch on the patch tracker:
Quote
backport1044.patch: for mod makers, makes a 1.1.0 client compatible cgame, game, ui, and tremded. game is not compatible with 1.1.0 cgame, and ui.qvm is not compatible with 1.1.0 ui folder (I don't think) so you need a download if you want to use the vms

And that seems perfect, I think I only need one trunk this way??
So I tried it, checked out svn 1044, applied that patch ^, and used that game and cgame, only they don't seem to match with my server (tjw's tremded).
(I get the famous "ERROR: G_ParseSpawnVars: found ; when expecting {")

Should I use an svn 1044 server or so? Will that be compatible with 1.1 clients?

Or is this whole patch totally not what I'm looking for and should I do as Lakitu7 said?
it makes a game compatible with 1.1 tremded, which isn't quite desirable unfortunately. the easiest way around this is to use the tremded produced by that same source tree.
Quote from: Asvarox link=topic=8622.msg169333#msg169333
Ok let's plan it out. Asva, you are nub, go sit on rets, I will build, you two go feed like hell, you go pwn their asses, and everyone else camp in the hallway, roger?
the dretch bites.
-----
|..d| #
|.@.-##
-----

Lakitu7

  • Tremulous Developers
  • *
  • Posts: 1002
  • Turrets: +120/-73
Re: Client side mod problems.
« Reply #11 on: October 25, 2008, 10:18:11 pm »
Ah. I didn't recommend backport1044.patch because it had another conflicting description that said it was client only, so I'd thought that was the case. I checked with ben and he removed the incorrect description.

Use backport1044.patch to give you a game, cgame, ui, and tremded set. Use that tremded to run it, as the game made by backport1044 won't be runnable with the other "backport" tremdeds floating around, nor the 1.1 tremded.
« Last Edit: October 25, 2008, 10:22:21 pm by Lakitu7 »

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Re: Client side mod problems.
« Reply #12 on: October 25, 2008, 10:20:03 pm »
Ah, thanks allot, that solved all the shader errors etc, I can now normally join etc, only some parts of the HUD aren't displayed and I get these errors on the client:
Code: [Select]
^1ERROR: ui/teamscore.menu, line 166: unknown menu item keyword 20
^1ERROR: ui/teamscore.menu, line 166: unknown menu item keyword 4
^1ERROR: ui/teamscore.menu, line 166: unknown menu item keyword 2
^1ERROR: ui/teamscore.menu, line 167: unknown menu item keyword 247
^1ERROR: ui/teamscore.menu, line 167: unknown menu item keyword 20
^1ERROR: ui/teamscore.menu, line 167: unknown menu item keyword 4
^1ERROR: ui/teamscore.menu, line 167: unknown menu item keyword 2
^1ERROR: ui/teamscore.menu, line 188: unknown menu item keyword 20
^1ERROR: ui/teamscore.menu, line 188: unknown menu item keyword 4
^1ERROR: ui/teamscore.menu, line 188: unknown menu item keyword 2
^1ERROR: ui/teamscore.menu, line 189: unknown menu item keyword 247
^1ERROR: ui/teamscore.menu, line 189: unknown menu item keyword 20
^1ERROR: ui/teamscore.menu, line 189: unknown menu item keyword 4
^1ERROR: ui/teamscore.menu, line 189: unknown menu item keyword 2

Probably has something to do with an incompatible ui.qvm? I'll try to put that into the pk3 too..

Lakitu7

  • Tremulous Developers
  • *
  • Posts: 1002
  • Turrets: +120/-73
Re: Client side mod problems.
« Reply #13 on: October 25, 2008, 10:23:29 pm »
Yeah, you want ui.qvm in the pk3 too.

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Re: Client side mod problems.
« Reply #14 on: October 25, 2008, 10:28:04 pm »
Hm, that made it even worse, I get the messages as I got without the ui.qvm in the pk3 plus these extra messages a few lines further in the log:
(It also made the text in the join dialogs disappear..)
Code: [Select]
^1ERROR: ui/joinserver.menu, line 267: unknown menu item keyword 560
^1ERROR: ui/joinserver.menu, line 267: unknown menu item keyword 20
^1ERROR: ui/joinserver.menu, line 267: unknown menu item keyword 20
^1ERROR: ui/joinserver.menu, line 267: unknown menu item keyword 0
^1ERROR: ui/createserver.menu, line 99: unknown menu item keyword 0
^1ERROR: ui/error.menu, line 55: unknown menu item keyword autowrapped
^1ERROR: ui/serverinfo.menu, line 68: unknown menu item keyword 135
^1ERROR: ui/serverinfo.menu, line 68: unknown menu item keyword 40
^1ERROR: ui/serverinfo.menu, line 68: unknown menu item keyword 20
^1ERROR: ui/serverinfo.menu, line 68: unknown menu item keyword 0
^1ERROR: ui/findplayer.menu, line 144: unknown menu item keyword 135
^1ERROR: ui/findplayer.menu, line 144: unknown menu item keyword 40
^1ERROR: ui/findplayer.menu, line 144: unknown menu item keyword 20
^1ERROR: ui/findplayer.menu, line 144: unknown menu item keyword 0
UI menu load time = 601 milli seconds
UI menu load time = 53 milli seconds
^1ERROR: ui/tremulous_humandialogs.menu, line 49: unknown menu item keyword autowrapped
^1ERROR: ui/tremulous_aliendialogs.menu, line 49: unknown menu item keyword autowrapped

I took the ui.qvm from the same tree (svn 1044 with backport1044.patch from http://patches.mercenariesguild.net/index.php?do=details&task_id=2)

Lakitu7

  • Tremulous Developers
  • *
  • Posts: 1002
  • Turrets: +120/-73
Re: Client side mod problems.
« Reply #15 on: October 25, 2008, 10:45:36 pm »
I'll bet I have a guess of what you're still doing wrong.

Keep ui.qvm in there. That's right.

But now in your 1044 tree from SVN, find the UI folder. NOT the one in trunk/src/ui, but just plain /trunk/ui. Include that folder in the pk3. Make sure to have the actual folder in the pk3, not just the files in it, or the paths won't line up and you'll continue to get similar errors.

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Re: Client side mod problems.
« Reply #16 on: October 25, 2008, 10:51:14 pm »
Oh I thought only the qvm was sufficient. Will try your suggestion, thanks!

YEA, It's working, thanks guys!
« Last Edit: October 25, 2008, 11:04:06 pm by Thomsen »

benmachine

  • Posts: 915
  • Turrets: +99/-76
    • ben's machinery
Re: Client side mod problems.
« Reply #17 on: October 26, 2008, 02:28:23 am »
Following Lakitu7 asking me about this, I went ahead and did what I've been putting off for a while: I wrote a proper backport patch for modders against svn head.
This has been in use on mgdev for a while (more or less) but not separated out as a patch until now.

See mod-backport-1131.patch on http://patches.mercenariesguild.net/index.php?do=details&task_id=2

You will need BUILD_SERVER=0 and BUILD_CLIENT=0 in your Makefile.local
Of course, if you want to go on using what you have now that's also cool.
« Last Edit: October 26, 2008, 02:54:26 am by benmachine »
benmachine

Thomsen

  • Posts: 55
  • Turrets: +7/-1
Re: Client side mod problems.
« Reply #18 on: October 26, 2008, 12:26:54 pm »
Oh nice! I'll definitly try that out :D