Site Navigation
QuakeOne News
» Latest News
» News Archives
» QuakeOne Movies

QuakeOne Help
» File Downloads
» Quake Help
» Quake Servers

QuakeOne Community
» Forums
» Chat *new*
» Poll Booth
» Memberlist
» Member Map

Site Info
» Community Rules
» Moderator List

» Buy Quake

Visit QuakeOne.com On Facebook!Visit QuakeOne
on Facebook

Log in
User Name:

Password:

Not a member yet?
Register Now!
Online Users: 347
7 members and 340 guests
bfg666, Blood Vengeance, davebeats83, MangledEyeStudios, talisa
Most users ever online was 2,542, 06-04-2016 at 12:58 AM.
Go Back Home > Forums > Quake Talk > Quake Central > Further proving how much of a n00b I am... (quakec) Search Forums

Reply
LinkBack Thread Tools
Unread 05-11-2017, 05:12 PM   #1 (permalink)
Ogre
SpecialBomb's Avatar
USER INFO »
Posts: 103
+/-  Reputation: SpecialBomb is on a distinguished road
Join Date: Dec 2015
Currently: Offline
Further proving how much of a n00b I am... (quakec)

So, I am fairly sure spike can answer this question.

I use darkplaces as a development and main engine, simply because it's very cross platform, and it's in both the Ubuntu and Debian repositories, making my life easy.

However, today, I decided to run my sbdm mod on quakespasm, another engine that is available in the repos. Surprisingly, I got an error message when I set my -game option to my mod, which would be this:

Code:
========= Quake Initialized ========= couldn't exec autoexec.cfg Host_Error: progs.dat system vars have been modified, progdefs.h is out of date ERROR-OUT BEGIN QUAKE ERROR: Host_Error: progs.dat system vars have been modified, progdefs.h is out of date
Now, I based my mod off of cleanqc v106, and that progdefs.h looks identical to the one in my mod. This concerns me, because I don't want my mod only running on darkplaces, its supposed to be ambiguous.

So, here are my questions:
  1. What the hell is happening?
  2. Why is it happening?
  3. Why does this work in darkplaces, but not quakespasm?
  4. How do I prevent this from happening, and what is the solution?
Reply With Quote
Unread 05-11-2017, 07:36 PM   #2 (permalink)
Chthon
Dutch's Avatar
USER INFO »
Posts: 1,040
+/-  Reputation: Dutch has a spectacular aura aboutDutch has a spectacular aura about
Join Date: Jan 2014
Currently: Offline
Looks to me like you might have changed some variables in the top half of defs.qc. which must be defined in QC to communicate to the engine (.ammo_nails, for instance, because the engine draws the ammo count for nails on the status bar). Not sure why DarkPlaces accepts it though.

Just my initial impression. Could be wrong.
Reply With Quote
Unread 05-12-2017, 02:47 AM   #3 (permalink)
FTEQW Author
USER INFO »
Posts: 1,121
+/-  Reputation: Spike has a spectacular aura aboutSpike has a spectacular aura about
Join Date: Jul 2010
Currently: Offline
progdefs.h is obsolete. delete it. its generated as a byproduct of old qc compilers, the purpose being that it can then be compiled into every single part of the quake executable, thus its only useful if you're id software.
the qcc does a crc check on the resulting progdefs.h which serves as a convoluted way to crc the types, names, order, etc of the defs up to end_sys_fields. this is why it lingered as long as it did, and should also explain the error message.
fteqcc doesn't even write it any more, because quite frankly its useless. so if you have that file and you're using fteqcc then yeah, it won't have changed even if you totally rewrote all the systemdefs in your mod.

a quick fix is to just copy+paste the defs up to end_sys_fields from a known-good version into your defs.qc. you don't even need to delete the ones you previously had in there, but you should still clean up anyway.

in future, pay attention to 'progs CRC not recognised from quake nor clones' warning.
Add this to your code somewhere:
#pragma warning error Q208
that'll then make identical screwups fatal in future.
__________________
Some Game Thing
Reply With Quote
Unread 05-12-2017, 11:52 AM   #4 (permalink)
Chthon
Seven's Avatar
USER INFO »
Posts: 3,182
+/-  Reputation: Seven is a jewel in the roughSeven is a jewel in the roughSeven is a jewel in the rough
Join Date: Oct 2007
Currently: Offline
Originally Posted by SpecialBomb View Post
So, I am fairly sure spike can answer this question.
I am fairly sure that in the last 2 decades there is not 1 Quake related question that Spike could not have answered.


Originally Posted by SpecialBomb View Post
I use darkplaces as a development and main engine
That is not a smart thing to do as DP does many things different than other engines. Maybe better stick to fitzquake derivates.

But on the other hand, a lot of *mixed source* engines have been born recently. Copying lots of features from existing engines into others.

So, making a 1-mod-for-all-engines gets more and more diffcult. You can clearly see this on the recently released Quake mods, which are only made for 2 or 3 engines.

Anyway, developing & testing a mod in ALL engines is nonsense as well. You should make a decision and walk that path then.


If you are working on a multiplayer mod (that is what I understand from your post) you should not use Darkplaces, as it is not largely used by multiplayers. There are other more popular multiplayer engines out there I guess...

Best of luck for your project,
Seven
Reply With Quote
Unread 05-12-2017, 10:01 PM   #5 (permalink)
Code Monkey
R00k's Avatar
USER INFO »
Posts: 5,773
+/-  Reputation: R00k has a spectacular aura aboutR00k has a spectacular aura aboutR00k has a spectacular aura about
Join Date: Nov 2005
Currently: Offline
Contact:  Send a message via ICQ to R00k Send a message via MSN to R00k
The multiplayer base is so small (20 people maybe), if you do make a rockin mod people will use your engine of choice. DP and FTE are two great engines for multiplay. The reason the 20 players use pq/qrack is because they are stuck with the "it feels like i remember how i used to play, and can still win this way" and the fact that they are reluctant to change. Which is also why DM3 is play more than 90% of the time.
Reply With Quote
Unread 05-16-2017, 04:51 PM   #6 (permalink)
Ogre
SpecialBomb's Avatar
USER INFO »
Posts: 103
+/-  Reputation: SpecialBomb is on a distinguished road
Join Date: Dec 2015
Currently: Offline
Originally Posted by R00k View Post
The multiplayer base is so small (20 people maybe), if you do make a rockin mod people will use your engine of choice. DP and FTE are two great engines for multiplay. The reason the 20 players use pq/qrack is because they are stuck with the "it feels like i remember how i used to play, and can still win this way" and the fact that they are reluctant to change. Which is also why DM3 is play more than 90% of the time.
Lol, I know.

I really like the netcode in DP, simply because it bases entity messages on delta change, so that way it's really unlikely to have latency due to entity spam, which happens a lot in my mod. I also like that it has a much better mouse resolution, so that my rockets actually go where I want them to.
Reply With Quote
Unread 05-17-2017, 07:17 PM   #7 (permalink)
Chthon
Baker's Avatar
USER INFO »
Posts: 10,008
+/-  Reputation: Baker has a spectacular aura aboutBaker has a spectacular aura aboutBaker has a spectacular aura about
Join Date: Nov 2005
Currently: Offline
Spiked Quakespasm R7 can connect to DarkPlaces servers that are running the usual DarkPlaces protocol (DPP7).

http://triptohell.info/moodles/qss/q...m-spike-r7.zip
__________________
Quakeone.com - Being exactly one-half good and one-half evil has advantages. When a portal opens to the antimatter universe, my opposite is just me with a goatee.

So while you guys all have to fight your anti-matter counterparts, me and my evil twin will be drinking a beer laughing at you guys ...
Reply With Quote
Unread 05-17-2017, 09:40 PM   #8 (permalink)
FTEQW Author
USER INFO »
Posts: 1,121
+/-  Reputation: Spike has a spectacular aura aboutSpike has a spectacular aura about
Join Date: Jul 2010
Currently: Offline
Originally Posted by Baker View Post
Spiked Quakespasm R7 can connect to DarkPlaces servers that are running the usual DarkPlaces protocol (DPP7).

http://triptohell.info/moodles/qss/q...m-spike-r7.zip
qss's own protocol extensions also do the same nack-deltas thing, so you can just use qss as the server instead. no need for dpp7.

@baker
either way its fairly trivial to add client-side support for nack deltas, be they fte's or dpp7. its the server side that's hard.
on the other hand, qss has less checks for PEXT2_REPLACEMENTDELTAS than it does for PROTOCOL_VERSION_DP7, and that's despite the dpp7 references being just the client side (and many of those repdelta checks are just to trigger host_errors when the server didn't enable it). Which is frankly the main reason that I went with that instead of dpp7 - its much simpler to integrate (same reason I added dp-compatible downloads instead of fte's extension, see! I'm not excessively biased!). the dpp7 stuff that I did add was really only because dp servers default to dpp7 and have no graceful fallback, its also not very complete, but 'should' be enough for running vanilla quake.
either way qss doesn't support prediction
but yeah, I really ought to make a qss-r8 release some time - there's a few serious bugs in r7.
__________________
Some Game Thing
Reply With Quote
Unread 05-17-2017, 10:13 PM   #9 (permalink)
Chthon
Baker's Avatar
USER INFO »
Posts: 10,008
+/-  Reputation: Baker has a spectacular aura aboutBaker has a spectacular aura aboutBaker has a spectacular aura about
Join Date: Nov 2005
Currently: Offline
Originally Posted by Spike View Post
I'm not excessively biased!
Hehehe, never thought you were. Yeah, it's nice you know in detail how non-Spike engines work.

Originally Posted by Spike View Post
@baker
either way its fairly trivial to add client-side support for nack deltas, be they fte's or dpp7. its the server side that's hard.
I imagine DPP7 works roughly like this:

1. Accumulate a buffer of server frames. Probably needs to track client state.
2. Timing calcs of some sort.
3. Recalculate player entities and possibly projectiles based on slightly retroactive frame information.
4. Probably missing 2 items because I haven't been thinking about engine code.

I imagine monsters are not predicted, just like I imagine weapon pickups and teleportations are not predicted.

Somewhere I have a link to notes you made in a text file on your web site.
__________________
Quakeone.com - Being exactly one-half good and one-half evil has advantages. When a portal opens to the antimatter universe, my opposite is just me with a goatee.

So while you guys all have to fight your anti-matter counterparts, me and my evil twin will be drinking a beer laughing at you guys ...
Reply With Quote
Unread 05-18-2017, 03:19 PM   #10 (permalink)
Ogre
SpecialBomb's Avatar
USER INFO »
Posts: 103
+/-  Reputation: SpecialBomb is on a distinguished road
Join Date: Dec 2015
Currently: Offline
so, progdefs.h...

Just to get this together again, I essentially need to update all of the global variables I have defined in defs.qc into progdefs.h?

Also, @spike, I have no idea if you can, but it would be really cool if you could put your FTE engine on the Debian repository.
Reply With Quote
Reply

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -6. The time now is 10:27 AM.


eXTReMe Tracker