Mircea Kitsune [Tue, 15 Nov 2011 11:03:26 +0000 (13:03 +0200)]
Merge branch 'master' into mirceakitsune/sandbox
Rudolf Polzer [Mon, 14 Nov 2011 05:43:53 +0000 (06:43 +0100)]
declare a variable
Rudolf Polzer [Mon, 14 Nov 2011 05:43:21 +0000 (06:43 +0100)]
give two csqc functions the proper name
Mircea Kitsune [Tue, 8 Nov 2011 13:51:47 +0000 (15:51 +0200)]
Fix a fclose() I forgot to add for the database loading
Rudolf Polzer [Mon, 7 Nov 2011 08:17:04 +0000 (09:17 +0100)]
Merge branch 'master' of git://de.git.xonotic.org/xonotic/xonotic-data.pk3dir
Rudolf Polzer [Mon, 7 Nov 2011 08:16:04 +0000 (09:16 +0100)]
allow sv_allow_fullbright and sv_cullentities_* cvars on pure servers
Mircea Kitsune [Sun, 6 Nov 2011 22:51:58 +0000 (00:51 +0200)]
Allow a smaller scale in the sandbox menu
Mircea Kitsune [Sun, 6 Nov 2011 22:49:13 +0000 (00:49 +0200)]
Fix a bug which would cause the bounding box to get an incorrect size if scaling a model back and forth
Mircea Kitsune [Sun, 6 Nov 2011 22:10:14 +0000 (00:10 +0200)]
Slightly longer grabbing range by default
Rudolf Polzer [Sun, 6 Nov 2011 20:14:27 +0000 (21:14 +0100)]
detect whether map has vehicles/turrets in mapinfo (flag is unused yet)
Mircea Kitsune [Sun, 6 Nov 2011 15:50:44 +0000 (17:50 +0200)]
Fix local defined with the name of a global
Mircea Kitsune [Sun, 6 Nov 2011 13:38:48 +0000 (15:38 +0200)]
Actually, remove the g_grab switch permanently, and leave only the cvar to select grabbing distance. The code must enable an entity to be grabbed, so there's no point in having a cvar too.
Mircea Kitsune [Sun, 6 Nov 2011 13:30:54 +0000 (15:30 +0200)]
g_grab must be 1 by default
Mircea Kitsune [Sun, 6 Nov 2011 13:30:20 +0000 (15:30 +0200)]
Read-only mode. When enabled, no sandbox commands can be used, and objects cannot be spawned, removed, or edited. Useful if a server admin uses the sandbox to place objects on a map and modify gameplay, without wanting to recompile the map itself.
Mircea Kitsune [Sun, 6 Nov 2011 13:17:21 +0000 (15:17 +0200)]
Flood protection of object spawning and pasting. Defaulted to 1 second
Mircea Kitsune [Sun, 6 Nov 2011 12:57:14 +0000 (14:57 +0200)]
Correct a check for grabbing
Mircea Kitsune [Sun, 6 Nov 2011 12:15:09 +0000 (14:15 +0200)]
Lastly, use the correct cvar for grabbing distance, and give it a lower value
Mircea Kitsune [Sun, 6 Nov 2011 12:11:14 +0000 (14:11 +0200)]
In order for the new grabbing to work, a sandbox object's owner must be set as an entity too. Therefore, scan for players each frame... and if the player with the correct UID is present on the server, it is set as the owner. Otherwise, the owner is world
Mircea Kitsune [Sun, 6 Nov 2011 11:45:51 +0000 (13:45 +0200)]
Move non-cheat grabbing back into cheatfrae, so all code is in one place. Also remove the sandbox dragging code
Mircea Kitsune [Sun, 6 Nov 2011 11:15:53 +0000 (13:15 +0200)]
Remove non-cheat grabbing from the sandbox code, and allow it to be used for other purposes too. Any object with the .drag value set to anything other than 0 will be possible to drag without cheats, regardless of the sandbox mode.
Mircea Kitsune [Sat, 5 Nov 2011 22:26:41 +0000 (00:26 +0200)]
Merge branch 'master' into mirceakitsune/sandbox
Samual [Fri, 4 Nov 2011 19:06:47 +0000 (15:06 -0400)]
cl_announcer_maptime 3 in autocvars.qh
Samual [Fri, 4 Nov 2011 19:06:05 +0000 (15:06 -0400)]
Merge remote branch 'origin/samual/balance'
Samual [Fri, 4 Nov 2011 19:03:24 +0000 (15:03 -0400)]
Fix announcement/previous_announcement check -- should be good to go now :D
Samual [Fri, 4 Nov 2011 06:30:42 +0000 (02:30 -0400)]
Many fixes for announcer code, plus FINALLY fix the hagar "linkexplode" bug for contents... very annoying, but glad it's gone now :D
Samual [Thu, 3 Nov 2011 17:20:54 +0000 (13:20 -0400)]
Merge remote branch 'origin/master' into samual/balance
Rudolf Polzer [Wed, 2 Nov 2011 09:20:21 +0000 (10:20 +0100)]
add another checkfail
Rudolf Polzer [Wed, 2 Nov 2011 08:21:05 +0000 (09:21 +0100)]
get rid of the nextafter() hack now the engine has proper handling of this in setorigin()
Samual [Tue, 1 Nov 2011 18:35:34 +0000 (14:35 -0400)]
Add debug print
Samual [Tue, 1 Nov 2011 18:17:21 +0000 (14:17 -0400)]
Merge remote branch 'origin/master' into samual/balance
Rudolf Polzer [Tue, 1 Nov 2011 14:27:28 +0000 (15:27 +0100)]
request session locking
Rudolf Polzer [Tue, 1 Nov 2011 08:26:46 +0000 (09:26 +0100)]
Merge branch 'master' of http://de.git.xonotic.org/xonotic/xonotic-data.pk3dir
Rudolf Polzer [Tue, 1 Nov 2011 08:26:06 +0000 (09:26 +0100)]
add a cvar "sessionid" to make progs.db unique across multiple servers using the same directory
Rudolf Polzer [Mon, 31 Oct 2011 10:29:39 +0000 (11:29 +0100)]
fix warning
Rudolf Polzer [Mon, 31 Oct 2011 07:31:49 +0000 (08:31 +0100)]
warpzones: always make sure origin is changed
Rudolf Polzer [Mon, 31 Oct 2011 07:27:49 +0000 (08:27 +0100)]
remove the second touch handler hack for warpzones, let's see what breaks (we still get the debug message)
Mircea Kitsune [Sun, 30 Oct 2011 11:33:22 +0000 (13:33 +0200)]
Add menu button for object_claim, and colorize the info buttons to light yellow
Mircea Kitsune [Sun, 30 Oct 2011 11:13:04 +0000 (13:13 +0200)]
Add object_info attachments to the helper and menu
Mircea Kitsune [Sun, 30 Oct 2011 11:04:38 +0000 (13:04 +0200)]
Improve object_info messages
Mircea Kitsune [Sun, 30 Oct 2011 10:52:03 +0000 (12:52 +0200)]
Specify "no attachments" when the object had none, and fix a typo
Mircea Kitsune [Sun, 30 Oct 2011 10:46:36 +0000 (12:46 +0200)]
Add a new info command for printing information about attachments (object_info attachments)
Mircea Kitsune [Sun, 30 Oct 2011 10:25:41 +0000 (12:25 +0200)]
Document object_info updates in the helper, and fix some messages
Mircea Kitsune [Sun, 30 Oct 2011 10:19:39 +0000 (12:19 +0200)]
Re-arrange some buttons in the menu, and 'add object' info and 'mesh info' next to each other
Mircea Kitsune [Sun, 30 Oct 2011 10:07:02 +0000 (12:07 +0200)]
Don't srzone message and message2 together, which was causing another bug. Object information should now be stored properly.
Mircea Kitsune [Sun, 30 Oct 2011 09:59:44 +0000 (11:59 +0200)]
Fix another bug I forgot
Mircea Kitsune [Sun, 30 Oct 2011 09:59:00 +0000 (11:59 +0200)]
Add the object_info object command, which will print all this information to the player asking for it
Mircea Kitsune [Sun, 30 Oct 2011 09:53:30 +0000 (11:53 +0200)]
Only update owner name if necessary, and fix some silly bugs I left in
Mircea Kitsune [Sun, 30 Oct 2011 09:46:21 +0000 (11:46 +0200)]
Update object owner nickname when using the object_claim command. This can also be used to update your name on an object if you already own it, but changed your nickname since creating it.
Mircea Kitsune [Sun, 30 Oct 2011 09:37:16 +0000 (11:37 +0200)]
Store object information about creation and owner. Objects can now report the name of their owner, their creation date, their last edit date, and the date the creator last went to the bathroom. Joking about the first three ;)
Mircea Kitsune [Sat, 29 Oct 2011 21:36:15 +0000 (00:36 +0300)]
Don't seta cl_sandbox_clipboard, as it doesn't seem to work well in some cases
Mircea Kitsune [Sat, 29 Oct 2011 21:16:22 +0000 (00:16 +0300)]
Revert my last commit. I forgot you can edit one property of an object without changing the other, so setDependent does not make sense and gets in the way
Mircea Kitsune [Sat, 29 Oct 2011 21:09:42 +0000 (00:09 +0300)]
Menu: Force can only be set as long as the object is physical
Mircea Kitsune [Sat, 29 Oct 2011 21:02:33 +0000 (00:02 +0300)]
Shorter text, those buttons are quite small
Mircea Kitsune [Sat, 29 Oct 2011 21:00:31 +0000 (00:00 +0300)]
Add a menu button for showing mesh info, including listing of all bones
Mircea Kitsune [Sat, 29 Oct 2011 20:56:07 +0000 (23:56 +0300)]
For now though, comment EF_SELECTABLE out. Don't want objects always turning bright when looking at them. Good for helper entities though, like bones
Mircea Kitsune [Sat, 29 Oct 2011 20:51:10 +0000 (23:51 +0300)]
Use EF_SELECTABLE on sandbox objects, making them turn bright when looking at them. Should also help with tracing in some cases
Mircea Kitsune [Sat, 29 Oct 2011 20:42:47 +0000 (23:42 +0300)]
To make things even more fun, make the default clipboard cvar seta instead of set. Now even if you restart Xonotic, you can paste your last copied object in the world :)
Mircea Kitsune [Sat, 29 Oct 2011 20:38:47 +0000 (23:38 +0300)]
Document the new copying system in the helper
Mircea Kitsune [Sat, 29 Oct 2011 19:57:00 +0000 (22:57 +0300)]
Second part of my last commit, clipboard functional again. Objects are now pasted from the specified client cvar. For real men: You can also use the object_paste command to spawn an object from the console, by writing each property manually. I challenge your mental strength >:)
Mircea Kitsune [Sat, 29 Oct 2011 19:51:44 +0000 (22:51 +0300)]
And now for something a little different: No longer use a string for the clipboard, but a client-side cvar. This offers many new possibilities... such as multiple clipboards, object presets and shortcuts, exporting objects and posting them online (forum, twitter, etc), and using the clipboard between servers. eg: Say you see an object you can copy, and wanna put it on your server. Just copy it from the Sandbox menu, disconnect, connect to your server, and paste. Your object will be there :)
Samual [Sat, 29 Oct 2011 18:45:18 +0000 (14:45 -0400)]
Merge remote branch 'origin/master' into samual/balance
Mircea Kitsune [Sat, 29 Oct 2011 16:18:15 +0000 (19:18 +0300)]
Fix something I forgot, storage works again
Mircea Kitsune [Sat, 29 Oct 2011 16:11:41 +0000 (19:11 +0300)]
Simplify physics saving code
Mircea Kitsune [Sat, 29 Oct 2011 16:08:19 +0000 (19:08 +0300)]
Re-implement remembering of old movetype for objects, and also persist it in storage. For example: If you set an object to MOVETYPE_PHYSICAL, attach it to another object (during which it becomes MOVETYPE_FOLLOW), restart the server, then go back and detach the object, it will know to go back to MOVETYPE_PHYSICAL. This does not add any extra info, as movetype was already added to the storage for child objects, and was useless before this.
Mircea Kitsune [Sat, 29 Oct 2011 15:44:23 +0000 (18:44 +0300)]
Don't store origin and angles at all for child objects. Storage functional again. Note that this breaks previous storages
Mircea Kitsune [Sat, 29 Oct 2011 14:48:18 +0000 (17:48 +0300)]
Storage: Only store attachment bone info for child objects, not parents. This currently breaks the storage, as another change must follow
Mircea Kitsune [Sat, 29 Oct 2011 13:55:23 +0000 (16:55 +0300)]
Get and persist bone names properly. Objects attached to other object's bones will be now stored and loaded properly, for both clipboard and database.
Mircea Kitsune [Sat, 29 Oct 2011 13:35:24 +0000 (16:35 +0300)]
Storage save: Persist all strings between quotation marks. This allows models, materials, and bones with spaces in their names to be persisted properly
Mircea Kitsune [Sat, 29 Oct 2011 13:29:46 +0000 (16:29 +0300)]
Storage: Add support for persisting bones, and attaching back to them for objects that are pasted and loaded to / from database. Not tested yet
Mircea Kitsune [Sat, 29 Oct 2011 13:16:59 +0000 (16:16 +0300)]
Detach objects at exactly the same origin, not the origin of the parent. Angles however are reset to the parent's, so that detached objects don't spin or roll
Mircea Kitsune [Sat, 29 Oct 2011 12:54:19 +0000 (15:54 +0300)]
Sandbox menu: Send all strings with quotation marks around them. This allows specifying spaces in them, such as the "bip01 r hand" bone
Mircea Kitsune [Sat, 29 Oct 2011 11:23:37 +0000 (14:23 +0300)]
Fix menu bug again lol
Mircea Kitsune [Sat, 29 Oct 2011 11:20:42 +0000 (14:20 +0300)]
Fix a menu bug using the wrong cvar for attachment bone
Mircea Kitsune [Sat, 29 Oct 2011 11:14:07 +0000 (14:14 +0300)]
Ah, it seems tag counting should start from 1
Mircea Kitsune [Sat, 29 Oct 2011 11:10:54 +0000 (14:10 +0300)]
Document object_info in the helper
Mircea Kitsune [Sat, 29 Oct 2011 11:08:27 +0000 (14:08 +0300)]
edit rights = copy rights now for copying
Mircea Kitsune [Sat, 29 Oct 2011 11:05:55 +0000 (14:05 +0300)]
New functionality for g_sandbox_editor_free. 0 = players can only copy or edit their own objects, 1 = players can copy but not edit other objects, 2 = players can copy and edit all object. Default is now 1 (you can duplicate other people's objects but not edit them).
Mircea Kitsune [Sat, 29 Oct 2011 10:59:06 +0000 (13:59 +0300)]
Name the info command "mesh", and allow it to list both model, andimation frame, and tags. People can then know the model and frame of any object, which can be helpful with building
Mircea Kitsune [Sat, 29 Oct 2011 10:48:51 +0000 (13:48 +0300)]
Add a command which allows printing tag information of a model to the player
Mircea Kitsune [Sat, 29 Oct 2011 09:48:28 +0000 (12:48 +0300)]
Add an object_info command, which will print some information about the object later on. Also do some other code arrangements
Mircea Kitsune [Fri, 28 Oct 2011 23:46:56 +0000 (02:46 +0300)]
Add a TODO for persisting bones, and code comments explaining how the array storage works
Mircea Kitsune [Fri, 28 Oct 2011 23:26:32 +0000 (02:26 +0300)]
Get storage loading to use arrays too. Attached objects will be saved in storage, but object can also be copied / pasted with their attachments now. Bones are not saved yet, and will be done tomorrow
Mircea Kitsune [Fri, 28 Oct 2011 23:09:41 +0000 (02:09 +0300)]
At the expense of the developer's sanity, get the save system working with arrays. Also fix a code typo that was always there, making the storage get saved each frame. By default, storage is saved every 5 seconds
Rudolf Polzer [Fri, 28 Oct 2011 21:45:19 +0000 (23:45 +0200)]
simplify bot-should-attack logic (PLEASE TEST)
Rudolf Polzer [Fri, 28 Oct 2011 20:54:40 +0000 (22:54 +0200)]
another debug cvar
Mircea Kitsune [Fri, 28 Oct 2011 20:54:39 +0000 (23:54 +0300)]
Add a code comment about how the string works. Clipboard and database seem to be fully functional now. divVerent won't let me tokenize tokens though, so I need to change implementation to something less hackish.
Mircea Kitsune [Fri, 28 Oct 2011 20:47:13 +0000 (23:47 +0300)]
Fix the bug with multiple objects without a model being spawned from storage
Mircea Kitsune [Fri, 28 Oct 2011 20:30:12 +0000 (23:30 +0300)]
Attempt to make loaded child objects attached. Code is buggy any currently breaks storage, so switch to this commit only if you're ok with that
Mircea Kitsune [Fri, 28 Oct 2011 20:23:56 +0000 (23:23 +0300)]
Teach the loading code to load multiple objects from one line, by tokenizing the argument of another token. Objects aren't attached yet however
Mircea Kitsune [Fri, 28 Oct 2011 19:49:02 +0000 (22:49 +0300)]
Attempt to persist attached objects in storage and clipboard, part 1: Store child objects in the same line as their parent object. Objects are separated by the ; symbol.
Rudolf Polzer [Fri, 28 Oct 2011 19:33:15 +0000 (21:33 +0200)]
handle HTTP error 422: Unprocessable Entity by NOT retrying the send to a second receiving URL
Rudolf Polzer [Fri, 28 Oct 2011 19:29:54 +0000 (21:29 +0200)]
Merge branch 'master' of git://de.git.xonotic.org/xonotic/xonotic-data.pk3dir
Rudolf Polzer [Fri, 28 Oct 2011 19:29:48 +0000 (21:29 +0200)]
more spam
Mircea Kitsune [Fri, 28 Oct 2011 19:09:34 +0000 (22:09 +0300)]
Don't allow attaching to attachments, for obvious reasons. Also don't persist the movetype of attachments, as it will not work with that I'm going to implement next (restore default physics when detaching an object)
Mircea Kitsune [Fri, 28 Oct 2011 16:11:08 +0000 (19:11 +0300)]
Precache material sounds for objects that are loaded from database
Mircea Kitsune [Fri, 28 Oct 2011 16:04:32 +0000 (19:04 +0300)]
Print more information to the first line of the storage time, including the date and time when the file was last updated
Mircea Kitsune [Fri, 28 Oct 2011 15:48:57 +0000 (18:48 +0300)]
Add a name cvar for storage. That way, people can select between multiple storages. If * is that cvar, storage files are named sandbox/storage_*_mapname.txt
Mircea Kitsune [Fri, 28 Oct 2011 15:36:23 +0000 (18:36 +0300)]
Rename more functions, and add server notification messages for database loading
Mircea Kitsune [Fri, 28 Oct 2011 15:23:12 +0000 (18:23 +0300)]
Actually, do update the database when there are no objects. Otherwise deleting all objects would no longer update it
Mircea Kitsune [Fri, 28 Oct 2011 15:21:42 +0000 (18:21 +0300)]
Rename several functions