Jump to content

MoonDog

Members
  • Posts

    568
  • Joined

  • Last visited

Everything posted by MoonDog

  1. I didn't mean to say it was caused by OpenJK. I remember asking when someone told me that certain Icarus functions were made to work in MP in OpenJK if the problems were fixed, and they erroneously told me they were fixed in OpenJK. Thanks for the info. I'll pass it along.
  2. I'm sorry, you said it wasn't an OS specific issue. I thought you might have meant there were issues setting timescale via Icarus in Windows that I was not aware of because they are not immediately apparent. I'm brain washed.
  3. I don't know if I have time to put together a sample. There is an area in my FFA3 mod with a navgoal scripted AI. This would be inconvenient for debugging due to the size/load times. Correct. I don't want to stop offering support for my mods, but it's starting to get to the point where I am considering it. I'm told the mod is regular JA+, on Linux. AFAIK, the last time I attempted to utilize the the AI movement on Openjk + ja+(not ja++), it was not working as intended. Are there some sort of hidden issues on the Windows Ded? The only time the Icarus/manually setting the dvar has worked for me has been on a Windows machine.
  4. To be clear, I'm not "doing" anything. I'm just tired of getting emails about my mod not working on linux servers, referring people to OpenJK, and getting emails back that the problem is not fixed.
  5. In interest of reducing the amount of emails coming at me about my FFA3 mod, I will ask for what seems to be the 4th time. When will OpenJK fix the following two issues with the dedicated server on LINUX. NPC's don't follow scripted navgoals. They glitch about in circlesSetting the timescale either through direct commands, or through Icarus does not work on Linux servers I've opened reports for both of these issues on Github previously, but as I remember it was laughed off. Rudely.
  6. Not to be rude, but this topic is covered quite well in the plugin documentation.
  7. http://www.blendswap.com/blends/view/18777 or http://www.blendswap.com/blends/view/4405 Make sure you read the licenses. Some Blends don't require credit to the author, but it's always best practice to do so out of good faith.
  8. I'll have Mozzarella sticks for starters.
  9. JKA != Half-Life
  10. I looked at this a while ago. The scripting required actually wouldn't be too advanced. The thing that deterred me from even attempting this would be the massive amount of entity work. You'd need to gut a lot of stuff out, and you'd need to do it for all the BSP's. Then you'd have to redistribute all of the BSP's, and provide instructions on how to setup the proper rotation vstrs on a server, as well as how to setup the scorelimit. Then there would be a lot of relying on people not to be dicks and intentionally break shit. Too much work. ><
  11. lil_binger said he loves criticism and feedback, so here you go! Visibility: Level needs visibility optimization. Either with better structural brush layout, or hint brushing. Both preferably. lockpvs and showtris indicated that performance could be a good deal better throughout most of the level. *Side note*: Brushwork needs a good bit of treatment in terms of edge mitre to reduce tris counts. Also, there are a good deal of unnecessary surface splits from small brushes lying coplanar with larger brush planes. In the long run, this will cost performance. Examples: Lighting: There are quite a few incidents in the level where there is light, but no light source to provide the light. Where is this light coming from? Light entities need accompanying geo/models. *Side note*: Where some areas DO have logical light sources, the light generated is not consistent with the light source. Meaning, the amount of light generated is disproportionate to the size of the light source. Also, light colors do not seem to always match the color indicated by the light source. Examples: Theme/Texturing/Geo: The theme is relatively inconsistent throughout the level, which isn't necessarily a bad thing, however the "Bespin" theme and tones in the map look like a frankenstein of Bespin/Cloud city community made maps, or the JKO map. The textures, generally, match the colors and themes of Bespin. This are base textures however, so I guess Raven did a good job there. However, if we look at reference of Bespin, either through art or other games, we find the shapes and geo to be quite different. Surfaces in Bespin generally have a very curved quality. Not harsh edges, hexigon/octogon shapes. Examples from reference image search: In terms of texture application, I'd say this level needs a really good pass on alignment and stretching. Some of the patch surfaces have stretched textures, or textures that are misaligned. Some of the brush surfaces need an alignment pass as well, to bring up the quality of the aesthetics. Layout: Numerous layout issues for gameplay types. Inconsistent ramp angles and heights is a problem that needs to be addressed. As well as scale for the geo. Many things do not seem to have been thought out in terms of good scale. Additionally, the current geo needs a very thorough clipping pass. There are a huge amount of hangups in the level to get caught on. In regards to the layout: The layout is largely unconducive for varied CTF play. Many of the spaces share the same characteristics in terms of space and height variation. This does not support a large amount of player preference. Also, the layout is not optimized. It's sort of baffling unless you sit there and attempt to memorize the map for a large period of time. A good layout should teach the players within the first 5 minutes. There are too many confusing twists and turns that don't seem to have a great deal of thought towards gameplay. Conclusion: Reads more like a blockout that needs to go through more stages of iteration for the layout. Work with reference at hand. Reference images for lighting, for geometry, and overall texturing. Look at other levels, both included samples and well made community maps to get a handle on scale. Work more towards accommodating various styles of prefered gameplay if you are going to claim to support CTF on the map. Gameplay, gameplay, gameplay. Everything else(lighting, art, etc...) should be built AROUND the gameplay. "Move your rifle around your head, not your head around your rifle."
  12. Well, it's definitely an error defined in light trace. I think you've got some complex objects that need to be split up into multiple brushes/meshes
  13. Do you have brushes that you've clipped a lot of faces onto?
  14. You could sort of cheese it with some Icarus scripting, heavy and numerous entity mods, and a scorelimit set for an Icarus loop.
  15. You are very sensitive, and seem to be reacting based on a misconception. I was speaking in generalities to voice an opinion about design. I have not looked at any WIP threads here as of late, because mostly people like you going on tirades, such as you just did, when receiving actual criticism or an opinion counter to their own. I'm not sure what part of anything I said you misunderstood as any sort of personal attack at your work, but I have not even looked at it. Nor would I, given your little outburst. It discourages me from believing you'd be capable of holding any sort of meaningful discussion regarding design if I gave you real criticism. Unprofessional, counter-productive.
  16. You can alter the dynamic glow part of the shader as freely as you like, testing different images, blends and values to your hearts content without recompiling. The surfacelight, however will require a recompile. They are baked directly into the lightmap, and therefor need to be recreated to see the results of an adjustment on that argument. JKA doesn't have any sort of true primary dynamic lighting.
  17. I doubt you have anything to worry about. That is a small handful of entities. I entity modded the plugin version of my FFA3 mod up to nearly 1,000 entities safely. I left a small cushion for projectiles and other gameplay entities, and never had any issues. As for the other things you said, part of the reason I hate community made maps that "support ctf", is because the person who designed it thought CTF would work as an afterthought as long as the flags are placed linearly in fashion; with supporting logical spawns. It's simply not the case, and is a good deal more complicated than that.
  18. info_player_start functions in MP as well, and can be used. A teamdeathmatch spawn will handle both tffa and ffa
  19. Rendering "light" in Radiant is no simple thing. Quite the opposite. In the scheme of things, it loses it's importance anyway. Eventually you become good enough to predict how the falloff of each light entity will look, same thing for surface lighting. Even with light preview, one wouldn't suddenly become a light artist. I'd much rather GTKRadiant adopt things for CODRadiant besides the light preview, such as the camera movement system for the 3d view. It's very much more efficient. There are other features such as Z-Axis cubic clipping, hide unselected without requiring invert selections( Or, Regions. *Shudder* ), measuring tape line, model viewer, better texture window, better entity control and linking, more keyboard shortcuts for more functions (Rotate X, Y, Z, Lock X, Y , Z, etc... ) that I'd rather have. Because currently, using GTKRadiant is NOT a pleasure. Using CODRadiant is, because it feels more accessible and more fluid.
  20. I usually just place team based spawns only; in order to handle both situations. It's not a HUGE deal in JKA, but it's still a wise practice to carefully consider the amount of space and the layout of your level when placing your spawns. A common mistake for a community made competitive map is misunderstanding the importance of spawn placement. As for the limit of spawns, I'm not sure. I know the entity limit is 1023( +1 Required Worldspawn ).
  21. A decompile isn't necessary, unless you need it for education purposes or to more easily get origins. With the state of this community, anyone using a decompile for benign purposes would be shocking. You can open the .bsp with notepad, search for "worldspawn", and find the entity list that way. Everything from the opening bracket of the world spawn entry { "classname" "worldspawn" } to the closing bracket of the last entity example: { "classname" "your_mom" } needs to be copied out into a new txt file. Simple save that file as the_maps_name.ent. Modify the existing entities or add new ones, keeping to the proper syntax. You can then recompile the .ent file back into the BSP with an onlyents compile on Q3map2. There are a bunch of tutorials out there on how to do this. I like to use Boba Fett's little entity re-wrapper. Just need to setup your paths, and have the .ent file and the .bsp in the same folder as q3map2. Drag and drop the .ent file onto this .bat @echo off cls title Entity Recompiler - Wrapper made by BobaFett echo q3map2 entity recompile wrapper echo by BobaFett echo. m: cd C:\Program Files\GtkRadiant-1.4 q3map2.exe -v -game ja -onlyents %1 echo. echo Compiling finished, press any key to close this window pause>nul
  22. You bet your ass poison is doable. Loop //Generated by BehavEd flush ( ); rem ( "This script is ran when the player spawns every time" ); loop ( -1.000 ) { rem ( "This loop sets their parm15 to timer2 and begins the poison loop" ); wait ( 1000.000 ); set ( /*@SET_TYPES*/ "SET_PARM15", $get( FLOAT, "timer2")$ ); if ( $get( FLOAT, "SET_PARM3")$, $=$, $1$ ) { rem ( "If the player triggered poisonactive, count down their HP" ); if ( $get( FLOAT, "SET_HEALTH")$, $!$, $100$ ) { if ( $get( FLOAT, "SET_HEALTH")$, $!$, $0$ ) { if ( $get( FLOAT, "SET_HEALTH")$, $<$, $0$ ) { set ( /*@SET_TYPES*/ "SET_HEALTH", "0" ); } else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $90$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-1" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); } else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $80$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-2" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); } else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $70$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-3" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); } else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $60$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-4" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); } else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $50$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-5" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $40$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-6" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $30$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-7" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $20$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-7" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $10$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-8" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); else ( ) { if ( $get( FLOAT, "SET_HEALTH")$, $>$, $1$ ) { set ( /*@SET_TYPES*/ "SET_COUNT", $get( STRING, "SET_HEALTH")$ ); set ( $get( FLOAT, "SET_COUNT")$, "-10" ); set ( /*@SET_TYPES*/ "SET_HEALTH", $get( FLOAT, "SET_COUNT")$ ); } } } } } } } } } } } } } } } } } } } } Deathscript //Generated by BehavEd rem ( "When the player dies this script runs on them" ); set ( /*@SET_TYPES*/ "SET_PARM3", "0" ); rem ( "Clears their parm3 so when they respawn they arent poisoned again" ); set ( /*@SET_TYPES*/ "SET_DEATHSCRIPT", "NULL" ); rem ( "Clears their deathscript so no script is ran when they die unless they are poisoned" );Poisoner //Generated by BehavEd rem ( "This script poisons the player and should be in a target_scriptrunner" ); rem ( "make sure the scriptrunner is count -1 and spawnflags 1" ); rem ( "Make sure whatever you want as the delivery system targets the scriptrunner" ); if ( $get( FLOAT, "SET_PARM3")$, $!$, $1$ ) { rem ( "parm3 is the poison parameter on all players DONT TRY TO USE IT FOR SOMETHING ELSE" ); set ( /*@SET_TYPES*/ "SET_PARM3", "1" ); rem ( "Sets the deathscript on the player so they are cleared of poison when they respawn" ); set ( /*@SET_TYPES*/ "SET_DEATHSCRIPT", "nopoison" ); }
  23. I got enough plant the bomb/Defend against bomb plant in Counter-Strike. Doesn't interest me in JKA.
×
×
  • Create New...