Jump to content

NAB622

Members
  • Posts

    519
  • Joined

  • Last visited

Posts posted by NAB622

  1. What kind of door are you looking to create? Func_door can handle basic back-and-forth movement, and if I recall correctly, using the angles key you can set the movement to anywhere on all three axes at once (Or just angle for a single direction).

    If you're looking for a swinging or rotating door, or anything with more than a single motion, you'll need a script for that.

  2. No coding is required. To do it you would have to place the spawn points in a secluded area, with a trigger to instantly teleport players.

    The biggest risk here is lots and lots of telefrags. And this is also assuming you can teleport players to the location of a moving func_train anyhow. Add in the aforementioned physics issues, and personally I don't think it's worth it. You're much better off just faking it visually. And honestly you can probably make it look better that way too.

    OCD2 likes this
  3. Entities cannot be attached to each other in that manner, with only one exception that I know of (Misc_model). Because of this, and because of the way in-game physics work, it is always better to simulate the movement of the train. I would use func_train and scrolling textures outside all windows to simulate buildings and scenery passing by. Also, it may not be visible in your entity configuration, but you can use target_screenshake to give a rumble here and there to help simulate movement.

     

    That said, if you really really need to move the cars, you'll need to override the spawn system and teleport players to the train, assuming trigger_teleport or target_teleport can send players to the location of a moving func_train.

    10 minutes ago, Lwkill said:

    if i remember correctly there is the original map file of that mission somewhere here on jkhub

    t1_rail_sample.map is actually included in Radiant.

    That said, fullkevlar didn't specify single player or multiplayer, but the entities used in t1_rail are single player specific.

    ooeJack, Lwkill and OCD2 like this
  4. First off, make sure your vador folder is inside the gamedata/base folder, not the gamedata folder. The game always looks for assets starting in the base folder.

    Second, your texture path needs to be relative to the base folder. You cannot have an absolute path (For instance, starting at your drive). So, change the texture path to vador\models\map_objects\v2\Concgren.jpg. As long as you moved the vador folder as mentioned above, it should work.

  5. Music is easy. Put one (Or two for intro/loop music) stereo MP3 file (128 kbps constant bit rate works, I don't know about any other bit rates) in music/<mapname>, then in the worldspawn entity of your map, add this:

    key: music

    Value: <path to intro file> <path to loop file>

    If you aren't using an intro file, just give it a single path.

    Be aware that MP3 files do not loop correctly, there will be a ~0.026 second gap at the beginning of playback on each file. Edit wisely. Intro files can help with this.

     

    For shaders, exactly what are you trying to do? It's easier to explain with an example.

  6. 1 hour ago, Circa said:

    Are they in a folder or in a PK3? I've had the issue of textures not loading straight from a folder in base, I actually had to put them in a PK3.

    I believe /sv_pure 0 in the game console before loading the map will fix that. Not sure, it's been a while.

    3 hours ago, Aldro Koon said:

    "progressive encoding" ... (whatever that means, I just recall that fixing a few texture issues).

    Progressive JPEGs are encoded in several passes at multiple quality levels, each level increasing the quality. This is intended for web pages, so if you have slow internet you can at least see something as the image loads. Obviously, this would royally screw up Quake, which is likely using an old JPG library and has no idea what multiple passes are good for.

    3 hours ago, Naht00 said:

    I get a bright gray and white surface instead

    Check the game console for errors. It will throw one every time you see the gray and white squares, although it's probably buried in the rest of the loading messages.

    Aldro Koon and ooeJack like this
  7. If that is the path that is listed in Radiant, it is giving you the wrong path. It needs to be relative to the base folder.

    Here's an example sound from a trigger_multiple entity:

    key: noise
    value: sound/movers/switches/switch2.mp3

    If you change your path accordingly, the sound file should load.

  8. When you try to play the sound (Or maybe when the map loads), an error should be listed in the game console - do you see one by chance?

    I ask because two reasons - some versions of Radiant will give you a corrupt/incorrect path when you add a sound using this method. It might be worth manually checking to be sure it has the right path.

    Second, wav files need to be mono, and I think they need to be a specific bit depth and sample rate too, but I could be wrong on that.

    Either way, the console should have an error that tells you what is wrong.

  9. All right, I'm actually on my computer now, so I can give a proper answer.

    This only applies to getting data from a single game server - if you're looking to get a list of server addresses, that is beyond my knowledge, but I know it isn't hard. I believe JKHub runs a master server you can use for that.

     

    Anyhow, for individual server data, here's what ParaTracker does...

    Make sure you're using UDP for the connection, Q3 servers have no idea what TCP is.

    When tracking a server, ParaTracker creates a getstatus query with the following code:

    str_repeat(chr(255),4) . chr(02) . "getstatus\n"

    Basically, this boils down to:

    Four chr(255), followed by a single chr(2), the string "getstatus", and a line break. (There are other working methods, but I found that this method gives maximum compatibility across different games. For instance, Nexuiz Classic does not like this method, so I believe you have to remove the chr(2) for it to work).

    The final string should look like this:

    ÿÿÿÿgetstatus
    Send that command to the game server of your choice over UDP.

    If you are using Javascript/node.js, you will need to wrap the string with Buffer.from() before sending it.

    If all went well, you will receive a text dump that looks something like this:

    ÿÿÿÿstatusResponse
    \version\JAmp: v1.0.1.0 linux-x86_64 Oct 20 2020\v\2.6B1\timelimit\0\sv_privateClients\0\sv_minRate\0\sv_minPing\0\sv_maxclients\16\sv_maxRate\0\sv_maxPing\0\sv_hostname\^1Parabolic ^9[^8ja.dogi.us^9]\sv_fps\60\sv_floodProtectSlow\1\sv_floodProtect\0\sv_autoDemo\0\sv_allowDownload\1\ssf\5F\protocol\26\pmove_overbounce\1\mapname\sithcouncilv2\jp_gripSpeedScale\0.4\jp_cinfo\32\japp_version\JA++, 64 bits, May 30 2019, 78feacf\japp_unlagged\0\gamename\JA+ Mod v2.6 B1\g_weaponDisable\0\g_stepSlideFix\1\g_siegeTeamSwitch\1\g_siegeTeam2\none\g_siegeTeam1\none\g_siegeRespawn\20\g_showDuelHealths\0\g_saberLocking\1\g_privateDuel\1\g_noSpecMove\0\g_needpass\0\g_maxHolocronCarry\3\g_maxForceRank\7\g_jediVmerc\0\g_gametype\0\g_forcePowerDisable\0\g_forceBasedTeams\0\g_duelWeaponDisable\1\g_debugMelee\0\fraglimit\500000\duel_fraglimit\10\dmflags\0\capturelimit\5\bot_minplayers\0\bg_fighterAltControl\0
    22 132 "TIPO"
    0 0 "^0w^7S^0w^1|^0e^7V^0ilkill^7E^0"
    2 0 "^1s^0|^7papa"
    0 0 "^0D^7|^0S J^7o^0n^7e^0s"
    0 0 "^0one^1.^7conker"
    3 0 "^5-^0a^5-^7illumi^5na"
    0 0 "^0cK ^7inmojo*"
    12 0 "^2KiH^4.^7FeTTe^7"
    9 0 "^0w^7S^0w^1|^0l^7a^0ws^1_^769"
    1 0 "^1-^0Tv^1-^7doNka"
    9 0 "^4iN^3-^7SoD^3!"
    8 0 "^0-^7o^2p^7p H^2y^7drO^0-"

     

    The first line is four chr(255), followed by a string telling you what the server is sending you (statusResponse).

    The second line is all the CVars, delimited with backslashes like so:

    \variable\value

    After a line break, the player info begins. There is a line break between each player's info, the data is delimited with spaces, and player names are in quotes:

    score ping team(Only appears if teams are applicable) "name"

     

    One other important thing to note, is that Q3 games use ANSI encoding, not ASCII or Unicode. It would be a good idea to convert the data to Unicode if you're putting it on a web page.

    Good luck!

    Smoo likes this
  10. Yes. I think you're looking for SET_MODELSCALE (I don't remember the exact name of the variable).

    To accomplish it, you will need to use a to target_scriptrunner to fire the script, and you will have to check the runOnActivator flag. When the player fires the script, it will trigger the changes to take place directly on the player.

    ooeJack and OCD2 like this
  11. Sorry it took me so long to respond! I try to grab questions about Radiant right away.

    I do not have netRadiant, but I just checked my branch of Radiant, and putting an endcap on a bevel is bugged, so it's probably bugged in all versions of Radiant. My best suggestion is to try and build the end cap manually.

    If you're interested in any further assistance, post a .map file with the patch and I can at least look at it and see if there's anything else going on.

    ooeJack likes this
×
×
  • Create New...