Jump to content

NAB622

Members
  • Posts

    543
  • Joined

  • Last visited

Everything posted by NAB622

  1. Is there still a .bak file in the same folder as the .map? If so, copy it for safekeeping immediately. It can be used. Also, check autosave.map. If neither of those work - what is the size of your .map file?
  2. Hmmmm.....not sure, then. Is shaderlist.txt present in base/shaders? That's the only other thing I can think of.
  3. At the top, where it says Basepath, it needs the base folder, not the gamedata folder. Add "base" to the end of that line and you should be good to go.
  4. Another update! Big progress today. The horizontal culling code in the renderer has been corrected! FOV settings above 90 will no longer bog down the renderer. Vertical culling code has been added to the renderer! This means that all four sides of the camera will cull out brushes that are not visible (Previously this was restricted to just the left and right). This should greatly increase performance on large maps, especially when the render distance is set up high (The old render distance was 20000, and I have it set to 65536 by default now). Misc_model_static will now show up just like a misc_model, instead of a pointless red block. The preferences have been updated to reflect all the new camera settings. I have an image and a video of the changes below: (The video is actually high quality this time because I fixed the bad recording settings in OBS.....whoops) Thoughts are welcome!
  5. Okay, yeah I see why you're confused.....I'll start from the top with this one and try to clear everything up. Firstly, target_scriptrunner is unnecessary in most cases, although it's perfectly valid to use it. If you're firing the script with a trigger, you can use a trigger_multiple with a usescript value and it will have the exact same effect. On to the entity setup... Scripts can move func_ entities (Except func_group), so you'll need to set up your mover that way. func_door, func_wall and func_static are all valid movers. (I hate func_static, but that's another thing entirely). To have your script move that particular mover, you'll need to use an affect block in your script (Which you have), and on the entity you'll need to set a script_targetname to match. Any movement you apply will now directly affect the entity. Make sure you use an origin brush as part of your entity, so rotations don't get messed up. Now, it looks like you have a misc_model involved with your mover. Misc_model will not move on it's own. You need to set it's "Target" value to be the targetname of whatever func_ entity you want it to follow. Right now you have it targeting the target_scriptrunner, which won't do anything. For the script, you're using a task within a loop. Unfortunately, all this will do is rotate the affected mover 5 degrees on all 3 axes, and then stop. Moves and rotations are applied directly to the vector and angle values on the entities, so applying a rotate 5 5 5 more than once will make no changes. Furthermore, you don't really even need the task for that - just apply the rotation directly. Is your desired affect to make the entity rotate over on all 3 axes? If so, check out this script from Taspir Power Complex V3 that rotates a vortex cube over the center of the map: The use t615 line at the top triggers the mover, which is a func_wall, between being visible and invisible. The use "nothing" blocks are there to pad the loop, since there's a bug in JA that rearranges the first and last blocks of loops. Good luck, hopefully this helps! Any further questions, post back and I'll try my best to help.
  6. Post a picture of your script, and a picture of the entity window with your mover entity selected, and we can get you all set! Most likely, your issue is the lack of an origin brush, but it's hard to say without seeing the aforementioned items. Also, to help with debugging scripts, type /developer 1 in the game console. Everything a script does will print to the console.
  7. Right now this is native to Linux. I'd love to get it on Windows but I'm not very skilled, so I'll revert back to the old Scons build system for that, cross my fingers and hope it works. If it doesn't, I will still try my best to get it on windows.... But like I said, not much skill here. Right now that's not even close, though. I'm going to be looking into the possibility of migrating to GTK3 once enough of the bugs are fixed. GTK2 only supports three mouse buttons, and I'd like to use buttons 4 & 5 to change the current grid size, since I attached everything to it. We'll see what happens...
  8. Aw, thanks. I have no doubt this will take at least 6 more months to complete, maybe even closer to 10... But when it's done it'll make things so much easier, at least for me. I still plan to do those tutorial videos, too, but I can't even start them until radiant is done anyway. Ultimately, Radiant should just be replaced with a whole new program, but I don't have the skills or the time to start from scratch. Plus, as I say all the time, Radiant's internals really are rock solid, they just need the bugs fixed, and a UI to match.
  9. Another update! Here's what's new: The plugins are all fixed and working again, Bobztoolz in particular. The camera view now has a horizontal FOV setting (As of right now, this WILL adversely affect frame rate if it is over 90 degrees since I couldn't figure out the culling code, but the new cubic clipping settings should help with that). Had to get some help on this one, but it's absolutely worth it. The grid and camera had bugs where they would not re-render when the windows were resized. This has been fixed. EDIT: The dialog boxes have had mnemonics added. Instead of having to click "Yes" "No" or "Okay" all the time, you can now use the keyboard (Alt + mnemonic key). Small change, but great for power users. The patch inspector is almost done! I have attached an image below, let me know what you think (I'm very interested in input): I do also intend to do some major overhauls on prtview and gtkgensurf, but that's stuff for later. Both of them are full of useless, bogus settings that don't need to be there. Prtview can actually be reduced to just a toggle button, so that'll be my goal when I get to it.
  10. Hmm. Not sure why...... They load on my phone and my computer. Here's direct links, although that probably won't be any help: http://storage.nab622.com/nab622/CameraFOV1.png http://storage.nab622.com/nab622/CameraFOV2.png
  11. Small update. As usual, not much to show, but here's the goods: Vertex and edge flags are now a LOT larger. Since you can zoom in much further than before, this will make vertex and edge selecting and editing much easier. The size was also added to the preferences, so it is easy to change if you don't like it. The camera icon on the grid now has a thin black outline to guarantee visibility. In the previous update, I had made the FOV lines for the camera icon (On the grid) change in length based on the camera’s angle relative to the current grid view - now, the aperture angle of the FOV lines will change to match the current camera FOV (Based on the window size). The camera icon will now tell you exactly what it is looking at on the grid. Fixed a bug where the grid and camera would not re-render correctly when windows were resized. Rewrote the way the grid zoom is calculated. It is much cleaner now (No visible change with this one). The undo buffer is now cleared when a map is loaded or a new map file is started. (No idea why this wasn't a thing to begin with). Here's a few shots of the improved FOV indicator, as well as the new vertex flag size: I know progress has been slow, and I apologize for that, but I'm still working a lot of hours, and that's my main inhibitor - the second inhibitor being that I'm having to learn some basic vector math as well as C, and I am very bad at math.
  12. This is a relatively small update, related to the one above. I've made lots of small changes, but some of them required figuring out some vector math (Yikes)...and it's impossible to show what's happening with still images, so here's a video of what's new: The new stuff is: The camera icon on the grid has been made bolder so it is easier to see, and the FOV indicators on it will change length based on the camera's angle relative to the current grid axis. Moving and angling the camera on the grid (Ctrl + Middle click to move, middle click to set angle) is much improved as well, although most of the changes there are likely not noticeable. Bottom line, the camera will correctly "Roll over" to the other side, instead of turning upside-down and/or reversing the input like I've seen it do in the past. (Not sure what version of Radiant that was???) Finally, the angle arrows on entities will show the correct orientation when targeted at an entity, or when using the "angles" key, and will update every frame, so they will always point in the right direction. I forgot to show the dotted line selections, but you can sort of see it in a few places. Also worthy of note, Bobztoolz is completely broken and doesn't even show up on the plugins toolbar. I will have to fix that soon.
  13. Type /developer 1 in the console and your messages will appear. ?
  14. Small update! Got two more things added, although I had to have some help. When a map is loaded, Radiant will now snap the camera to the location of an info_player_intermission first (If there is one). Info_player_start and info_player_deathmatch are still used, but they are fallbacks. Radiant will also take on the same directional angles (Including those of a target!) of whatever entity it snaps to. This means that Radiant will see the same thing as the game when the map is loaded. When selected items are hidden behind other geometry, the selection outline will show as a dotted line, just like Radiant 1.5 does. Here is a shot from ffa5_sample, just after loading (To show the camera angle), and with a few items selected to show the dotted lines:
  15. What is that snippet of code you posted? It doesn't look like a .map file or a .shader file...as far as I can tell, the error is complaining about line 47373 in your .map file. It's likely a bad value on an entity that's causing a parse error.
  16. Update! Nothing visual to show for this one either, since it's all internal - but the internal vector math in Radiant has been converted from float precision to double precision. What this means is: The lowest precision on the grid will indeed be 0.03125, not 0.125 You can edit at 0.03125 all the way to the edge of the grid, and your edits will not flake out You are guaranteed the 6-decimal precision of a .map file all the way to the edge of the grid (No float point errors) The grid can theoretically increase in size (This is a bad idea since JA still runs on float precision, but it CAN be done) q3map2 should not need the T-Junction phase any longer, which is good because it creates a bunch of pointless geometry everywhere Now, because of this, I still have several serious things to fix: q3map2 is completely broken (It's still running on float precision internally, and I will have to have it convert everything down to float when it saves the BSP file) The grid view in Radiant needs a few heavy changes to the way it renders - if you zoom in to 0.03125 and go halfway to the edge of the grid, everything gets janky and unusable, and it gets worse the further you go toward the edge Radiant is somewhat less stable, since there are still things trying to run on float precision in various places. I have to hunt them all down Finally: The camera window will also likely flake out a little (Below 0.5 precision) at the edge of the grid, since OpenGL runs on float precision. I do not intend to even try to fix this, as it will reflect what will happen in JA, since JA also uses float precision. Hopefully I will have screenshots of a few new things soon, but since this is all internal stuff, there's nothing to show yet. However, once the internals are set, the benefits will manifest in the other features!
  17. None that I know of. Just play around until you find them, sadly. In my fork, I am adding the functionality of J to the preferences menu, because it really needs to be somewhere. I was not aware of that shortcuts list, so thanks for that. However, do not trust it - use it as guidance only. At a glance, many of the items on it are severely outdated as of Radiant 1.4, and that was about 15 years ago.
  18. Press J a few times. ?
  19. Sorry for all the waiting - still working a lot. I haven't finished the patch inspector yet. I am close to done with it, but the UI isn't finished, so I don't want to show it just yet. In the meantime, since I've been working on the preferences, I thought I'd show what I was up to over the last few days:
  20. I believe that's supposed to be saved in jampconfig.cfg, but if it isn't, open jampconfig.cfg in notepad, and add your cg_fov command at the end of it. That should work.
  21. I can say from experience that music files above 128 Kbps frequently fail to load, at least when created with Audacity and the LAME encoding library. Not sure why.
  22. Ohhh, you're using the tag stuff for movement....I hate that method. I don't know if it's responsible for your problem or not, but it's a silly method in my opinion, because it requires you to recompile the entire map for any change in movement. When you are using a move block, you can just move the elevator to any arbitrary coordinates in the map you like - there's no need to use target_position or ref_tag or any of that nonsense. Better still, if your elevator has no "Origin" brush, then 0 0 0 is the starting position of the elevator, and you can move it relative to that. So, moving it on the Z axis by 192 units will move the elevator up 192 units (I forget which order the axes are in). Plus, you can guarantee that the elevator is always back where it started by telling it to move to 0 0 0. The biggest advantage to this method, though, is that if you change something in the script, all you have to do is recompile the script and reload the map, and you can see your changes immediately. You will not have to recompile the entire map. If your elevator does have an "Origin" brush (Which is required for rotation), then the exact center of the "Origin" brush will be the elevator's coordinates in the script instead of 0 0 0 - it's a little more tricky to use this way, but you can still make a working elevator without too much effort. Also - keep in mind that you can take an even easier approach to this entire thing, and just use func_doors for everything, and have the script use the movers in the order and timing that you want. This is by far the easiest, although least flexible, way to go.
  23. Post a screenshot of your script. It's probably something to do with the method of movement.
  24. You can just add that into the script, either by using move blocks on the doors or by having the script fire a func_door by targetname, with a use block. Ideally, the doors should be part of the building and not the elevator, or bad things can happen. Side note: instead of using a target_scriptrunner, you can put a usescript on the trigger_multiple, it should have the same result and save you an entity.
  25. Are you talking about SP or MP? In MP, g_npcspskill is definitely the variable used to calculate the health, not g_spskill. The actual calculation for NPC health is in NPC_spawn.cc, around line 930: if ( ent->health ) // Was health supplied in map { client->pers.maxHealth = client->ps.stats[STAT_MAX_HEALTH] = ent->health; } else if ( ent->NPC->stats.health ) // Was health supplied in NPC.cfg? { if ( ent->client->NPC_class != CLASS_REBORN && ent->client->NPC_class != CLASS_SHADOWTROOPER //&& ent->client->NPC_class != CLASS_TAVION //&& ent->client->NPC_class != CLASS_DESANN && ent->client->NPC_class != CLASS_JEDI ) {// up everyone except jedi ent->NPC->stats.health += ent->NPC->stats.health/4 * g_npcspskill.integer; // 100% on easy, 125% on medium, 150% on hard } client->pers.maxHealth = client->ps.stats[STAT_MAX_HEALTH] = ent->NPC->stats.health; } else { client->pers.maxHealth = client->ps.stats[STAT_MAX_HEALTH] = 100; } That said - it looks like it also affects some other things with the AI directly below that segment, so modify it with some caution. Edit: It also shows up all over the place in the NPC code in general, so yes, definitely use caution editing that.
×
×
  • Create New...