Quake c - .think() and .nextthink
Oct 7, 2012 Quake Tutorial 0 commentsThe quake-c entity .think() function pointer is an engine managed timing concept that is used on nearly every entity in the game.
.qc (dot qc) - the group for quake c coders of all denominations. If you make quake one mods and write code in quake c, join our group! I'll try to answer any quake c questions - please post your inquiry in the forums...
The quake-c entity .think() function pointer is an engine managed timing concept that is used on nearly every entity in the game.
Darkplaces can load Quake III maps. This tutorial will demonstrate how to get the most of those maps by using quake-c to populate them with quake one...
First new about the Game and some more Stuff. Also please note the summary field must be at least 50 characters in length. I had some nice cili some minutes...
What platforms will OpenKatana be supporting? Why? Well read more to find out!
Now that OpenKatana is finally on Moddb and in the public spotlight, what does it mean for development? Well let's find out!
Just a quick note - my main system is down with a blown power supply.
Until fixed, my net access is sporadic in the extreme and often limited to very high priority things like work and business. So expect many days of delay before I even see any new posts, questions, etc.
An update will follow as to when the system is back.
Here is another topic (and whole series of linked articles) for all independent developers and anyone on moddb:
P2pnet.net
If any of you are following the circus surrounding the big media company sponsored (backed, written, lobbied etc.) laws trying to be shoe-horned into our (not just USA, but worldwide!) legal system against the better interests of developers, coders, and really all free thinkers and right minded humans everywhere...
You should realize - many provisions of these thinly disguised "legislate business success, because big media sucks at innovation" laws could shut down moddb and similar sites (including news, game releases, reviews, search engine aggregation, link collections, klov, any game wiki, this list is endless) with nothing more than a single request. No legal review, no judgment, and no due process.
Off the net, adverts forbidden, and revenue halted.
Think of the destroyed world portrayed in the matrix films - that could be our internet if ANY of these laws pass.
If you are politically active, why not let those representing you know how bad this legal mockery is and provide some helpful suggestions on how they could be assisted on their swift stowage in the circular file.
Someone was telling me about wanting to do a rotating object. I made some notes for them, then posted them to hard_code() - Moddb.com
If you want a rotating door, that is a good example.
Later I may add a video of that in action.
The rotating object in this video:
Moddb.com
is NOT a hipnotic rotating entity set.
It is a func_model (just loads a model at an origin in the map) with
avelocity '0 10 0'
movetype '5'
solid '2'
It is interesting to note that the bounding box of the model does NOT rotate with the model. This is an engine limit. So while the model appears to rotate, it blocking ability of the solid '2' stays where the model first spawned.
This is why hipnotic rotates use func_movewall.
An article ALL developers should read:
"All patents are theft" - Linuxuser.co.uk
For the next tutorial, I think one of the basics might need to be covered. For any neophyte c language student, one of the trickiest elements is the pointer. And quake-c has one doosy of a pointer / struct combo - the "entity".
Been looking at a few of the existing tutorials, trying to figure out what to do next. Since I did the vector tutorial, I think at least I should add a comment on vector math, and one on ejecting brass from a gun.
After that I think its time for something like add a gun to a mod. But I'm thinking more along the lines of "add ANY gun" to a mod. I have this code of course in Archon. Thing is, my code is so customized it might be more work adapting it to a tutorial rather than just making a scratch tutorial. Time will tell.
Another idea I'm kicking around is adding random items to a map in play.
Just encountered a new qc fault:
Host_Error: SVVM_ExecuteProgram: QC function self.think is missing
No idea what caused that. I'm leaning towards the code that handles visweps while invisible though.
Someone requested the original quake 1 portal for my mod: Moddb.com
And I decided to modify that to do the "new" 2 portal method where you place entry and exit portals...and had a time today getting the angles right.
So I think the next piece will be on angles and getting the player and objects facing the right direction.
Thanks, I'll take that under advisement. And thanks for joining. If there is any particular qc question you have, go ahead an ask.