zicodxx
|
dc0400205b
|
Only call show_netplayerinfo() if GM_MULTI is set and reset netplayerinfo_on in game_setup()
|
2011-07-04 11:23:53 +02:00 |
|
zicodxx
|
b66efa5be4
|
Reset idle timer in main menu correctly even after playing the intro movie; Also got rid of a goto as it's generally bad and not needed since random demo selection picks a correct demo anyways
|
2011-07-02 22:59:03 +02:00 |
|
zicodxx
|
837ccccf80
|
When initializing ai object correctly initialize Ai_local_info to prevent glitches like random submodel angles
|
2011-07-02 22:48:12 +02:00 |
|
zicodxx
|
a973da9432
|
Made formatting for help text more consistent and prettier; Somewhat changed the code for help text so we can use variables in the help text. For example: If we change MAXIMUM_FPS, it will automatically be displayed in the help text without manual editing needed
|
2011-07-01 01:00:59 +02:00 |
|
zicodxx
|
8a6839e8a1
|
changed variables and pointer carrying vertex indexes from short to int to handle levels with over 900 segments properly
|
2011-06-30 12:23:38 +02:00 |
|
zicodxx
|
775ad16622
|
Correctly disable/initialize Multiplayer features not supported by IPX games for compability; Removed show_games_rules as there isn't much useful to show there; Some more code simplicity; Fixed sending of allowed items; Fixed player selection screen
|
2011-06-28 22:00:44 +02:00 |
|
zicodxx
|
d60dffdaff
|
Fixed possible memory corruption when saving Current_mission_filename which is not necessarily a 9 byte long allocated string; Bit safer string handling with snprintf; Fixed set but unused variables like a boss
|
2011-06-28 09:16:24 +02:00 |
|
zicodxx
|
dd01f591a6
|
Fixed object sync for latecoming clients which was broken due to a very, very, VERY stupid mistake...
|
2011-06-24 13:09:42 +02:00 |
|
zicodxx
|
ea16967383
|
For Hotshot and above made homing missiles turn to player a bit less agressive which is hardly noticable but slightly increases the chance to shake off a projective even if dodged without perfect timing. This makes possible to survive in case a player/bot shoots several homing projectiles in spread fashion
|
2011-06-23 09:50:20 +02:00 |
|
zicodxx
|
5252e41d31
|
PlayerCfg.MultiMessages was supposed to only show messages of class HM_MULTI but turned out to only block HM_REDUNDANT, too. Fixed this copy/paste error of mine
|
2011-06-23 09:24:00 +02:00 |
|
zicodxx
|
1be064dfb9
|
When GameArg.CtlNoStickyKeys was introduced I forgot to add an actual check if -nostickykeys was supplied - fixed now
|
2011-06-21 19:19:17 +02:00 |
|
zicodxx
|
47c687d5fc
|
in compute_light_emission() handle RT_NONE for delayed explosion fireballs
|
2011-06-20 11:30:12 +02:00 |
|
zicodxx
|
7c4d9afc80
|
By using fixed distance bumping for fix_illegal_wall_intersection making the whole process much more reliable on sharp edges
|
2011-06-17 00:33:46 +02:00 |
|
zicodxx
|
e3217385d2
|
Saturate colored dynamic light just like normal one - makes the hwole thing a bit less colorful but makes for better balanced color mixing (theoretically) and does not reduce static light
|
2011-06-09 10:28:58 +02:00 |
|
zicodxx
|
68c9ccadd0
|
Definition of dynlight_time should have been static to archive timed light calculations
|
2011-06-07 17:31:49 +02:00 |
|
zicodxx
|
4d51c1d8dd
|
Correctly disable secret levels for Shareware
|
2011-06-07 00:21:43 +02:00 |
|
zicodxx
|
acf7052546
|
For all filename strings use PATH_MAX as size, make sure they are inited correctly and only fill them with snprintf instead of sprintf
|
2011-06-06 21:19:38 +02:00 |
|
zicodxx
|
df7fa858bc
|
For all filename strings use PATH_MAX as size, make sure they are inited correctly and only fill them with snprintf instead of sprintf
|
2011-06-06 16:33:12 +02:00 |
|
zicodxx
|
3db4007d8a
|
for flexibility in terms of modding, allow player ship textures in Multiplayer be <= N_PLAYER_SHIP_TEXTURES and not hit Assert but pull out Eroor if there are more
|
2011-06-04 22:50:37 +02:00 |
|
zicodxx
|
0a4c6eef58
|
Just generally ignore missing sounds in digi_xlat_sound just like D1X-Rebirth - not limit to Shareware
|
2011-06-04 21:31:25 +02:00 |
|
zicodxx
|
144eacb061
|
Correctly handle PC Shareware for start_endlevel_movie() again without the defines but via is_SHAREWARE
|
2011-06-04 12:22:03 +02:00 |
|
zicodxx
|
8fde65eb3c
|
Play SONG_BRIEFING and SONG_ENDGAME on all non-builtin missions if available
|
2011-06-04 11:38:10 +02:00 |
|
zicodxx
|
7b08964f78
|
Don't force AltSounds on PC-Shareware content but still must bail out on missing sounds using a small hack. Still gives a better sound palette than AltSounds
|
2011-06-04 11:35:41 +02:00 |
|
zicodxx
|
6fe5bee78a
|
Since set_dynamic_light() is not necessarily processed each frame, added own counter for delayed precession of vertex-clight calculation; Added possibility to page in a bitmap in case an object which has never been rendered before is supposed to cast light visible by the player
|
2011-06-04 10:04:39 +02:00 |
|
zicodxx
|
a2e5afedf7
|
Added proper colored lighting handling for RT_POWERUP which I not noticed was wrong before ... darn dim glowing powerups
|
2011-06-01 15:49:06 +02:00 |
|
zicodxx
|
dd455389cd
|
Executing timer_update() at the beginning of calc_frame_time in case event_process() taking a significant amount of time to reach the game window and therefor could make FrameTime be inaccurate
|
2011-06-01 15:06:16 +02:00 |
|
zicodxx
|
9f42879473
|
When reaching EL_FLYTHROUGH in do_endlevel_frame() do not check for start_endlevel_movie() anymore but rather it's result so this subfunction does not get called again which does not only save us from executing pointless code and code which screws up flythrough sequence
|
2011-06-01 14:39:23 +02:00 |
|
zicodxx
|
dd991fbf6b
|
Got rid of cfile code: Renamed cfile-functions to use PHYSFSX-naming convention, Replaced cfile-macros with proper PHYSFS(X) calls; Introduced PHYSFSX_exists() which can check case-sensitive or case-insensitive to give more flexibility with game content
|
2011-06-01 09:59:55 +02:00 |
|
zicodxx
|
d34936d775
|
Added own channel management to SDL_mixer sound interface since the builtin channel management of this lib cannot handle our needs; Little code cleanup
|
2011-05-30 02:17:45 +02:00 |
|
zicodxx
|
ea70f3db03
|
Made netgame setup menu more flexible towards (constant or temporary) changes in available game modes
|
2011-05-28 12:07:40 +02:00 |
|
zicodxx
|
54f8868d4e
|
in game_render_frame_mono() call show_netplayerinfo() last so window views do not overlap
|
2011-05-26 15:57:02 +02:00 |
|
zicodxx
|
52a4c9ff59
|
In event_process() if a window closes while being drawn and there isn't a previous window we can get the next from just finish processing for this frame
|
2011-05-26 09:41:28 +02:00 |
|
zicodxx
|
dadb99bdca
|
Added multi_send_data_direct to send multibuf to a specific player (i.e. Host<->Client, not Client<->Client); Overhauled kill sending/receiving and computation to rely in host information about game_mode-related variables (team_vector, Bounty_target) which are vital for consistent kill computation; Added function to send/update game_mode-related variables and solve /move command with this as well instead of workaround via updating lite_info
|
2011-05-25 15:25:13 +02:00 |
|
zicodxx
|
bdeb0a70b4
|
When restoring Coop setting from netgame profile don't forget to fix max players variable
|
2011-05-22 20:04:43 +02:00 |
|
zicodxx
|
23197f52e5
|
Like in BigEndian builds do netmisc_calc_checksum() only with expected items of segment/side struct to prevent different checksums in case these structs change; Fixed several issues when building with editor; Fixed compiler warning regarding set but unused variable
|
2011-05-22 19:54:47 +02:00 |
|
zicodxx
|
8962863723
|
Making D1X- and D2X-Rebirth more similar in behavior of which player limit is needed to start team-based game in both RELEASE and DEBUG builds
|
2011-05-20 16:15:07 +02:00 |
|
zicodxx
|
a1aff93761
|
Made Automap Free Flight controls an optional feature which can be set in MISC OPTIONS
|
2011-05-20 12:23:28 +02:00 |
|
zicodxx
|
2f098796e0
|
Rearranged code to check for netgame-closed flag and refuse-players flag so they are updated correctly if another part of the code changes the menu item without activating it
|
2011-05-20 11:48:20 +02:00 |
|
zicodxx
|
b2bd51d870
|
Updated docs and fixed some typos
|
2011-05-20 00:14:42 +02:00 |
|
zicodxx
|
2a60b32da2
|
Removed key_flush() call from save_screen_shot() - not needed anymore due to new input reading and only screws up ingame controls
|
2011-05-19 23:49:04 +02:00 |
|
zicodxx
|
270a86da56
|
for fix_illegal_wall_intersection() try using the distance we moved to move out from the wall. Just in case it's a sane value, i.e. > 0 and <= obj->size/2
|
2011-05-19 11:49:49 +02:00 |
|
zicodxx
|
9b17431c45
|
Reset new_Bounty_target after using it and let host add a number on how often Bounty is reassigned. Both additions should help keeping target correct no matter how if multiple packets of the same type are disordered, delayed or both
|
2011-05-19 02:34:14 +02:00 |
|
zicodxx
|
ea850bd8eb
|
Improvement for fix_illegal_wall_interesection(): Move away from wall in right angle - not towards center. This improves the bumping in many situations and prevents ship getting stuck in small segments. Simplified and optimized code as well and removed check for degenerated Segments as not needed with this approach; Fixed some compiler warnings regarding set but unused variables
|
2011-05-19 01:25:38 +02:00 |
|
zicodxx
|
228915c750
|
for debug build ignore player Highest_level_index when starting a mission, making *Load Level* entry in main menu obsolete; Fixed two compiler warnings regarding set but unused variables
|
2011-05-16 01:46:26 +02:00 |
|
zicodxx
|
3de822c306
|
Added more info: M3U-support, GCC 4.6 warnings, more tracker infos
|
2011-05-15 12:15:36 +02:00 |
|
zicodxx
|
ecdeed6228
|
Solved possible issue when setting new Bounty_target via host messing up scores or new target itself - only set if player decided why to unset Bounty_target, keeping code flow and game logic in order; Fixed two compiler warnings regarding set but unused variables
|
2011-05-15 11:59:12 +02:00 |
|
zicodxx
|
aa520e662a
|
Send player position also when multi_send_player_explode() is called so powerups drop at the right spot in case the respawn packet arrives first
|
2011-05-13 22:21:13 +02:00 |
|
zicodxx
|
80ff014743
|
Don't call automap_process_input() if autmap_key_command() returns 1 preventing input mess
|
2011-05-07 13:29:26 +02:00 |
|
zicodxx
|
580ac93b7c
|
Taken out Render_depth reduction of Endlevel sequence in Software rendering build; Fixed two compiler warnings regarding set but unused variables
|
2011-05-07 12:25:05 +02:00 |
|
zicodxx
|
dbd7e83c35
|
Changed version from 0.56 to 0.57; Added first draft for RELEASE-NOTES.txt; updated docs
|
2011-05-07 02:51:21 +02:00 |
|
zicodxx
|
ec3bf88bec
|
Enabled Tracker support for Mac OS
|
2011-05-07 00:53:54 +02:00 |
|
zicodxx
|
47bd048b18
|
Correctly handle light computation of objects with render_type RT_LASER
|
2011-05-05 20:45:24 +02:00 |
|
zicodxx
|
62615d8ccb
|
Update for Debian packaging stuff
|
2011-05-05 01:31:09 +02:00 |
|
zicodxx
|
914555fe81
|
Host can now decide (again) if players are allowed to display enemy names on HUD
|
2011-05-05 00:16:37 +02:00 |
|
zicodxx
|
60e2a8aeb3
|
When doing sorted rendering, also take cloaking walls into account to properly draw objects behind it while cloaking process
|
2011-05-04 23:37:20 +02:00 |
|
zicodxx
|
d59a0c1f1d
|
Due to increased size of MAX_SEGMENTS old savegames became incompatible. To compensate added MAX_SEGMENTS_ORIGINAL with the original segment amount and read certain savegame info with this info when dealing with standard-sized levels and use Highest_segment_index when dealing with larger levels which are incompatible with older versions of the game anyways. Makes savegame site more efficient and still maintain backwards compability
|
2011-05-04 15:07:57 +02:00 |
|
zicodxx
|
0e1de3457b
|
To compensate fewer FVI runs in lower FPS and wall penetration caused by strong forces allowed fix_illegal_wall_intersection() to move an object out of the wall half it's size improving the collisions once more
|
2011-05-04 13:06:30 +02:00 |
|
zicodxx
|
62a7386d2a
|
mipmapping was always on for fonts due to changed filtering code in ogl.c
|
2011-05-04 12:18:25 +02:00 |
|
zicodxx
|
040407cf02
|
Fix crash in multi_maybe_disable_friendly_fire() when killer == NULL; Do not let player join game when gamemode is HOARD or TEAM HOARD and hoard.ham is not available
|
2011-05-04 12:05:59 +02:00 |
|
zicodxx
|
98e3706ada
|
Make sure the big explosion at the end of the escape sequence also uses blending if transparency effects are activated
|
2011-05-04 02:22:18 +02:00 |
|
zicodxx
|
4d2e19a96d
|
Since current approach to improve wall collisions prevented the player to enter segments which basically are too small for the player ship, added simple bumping function via object_intersects_wall(); Also when validating segments check for segment degeneration outside the editor build, too and set flag in segment structure for all different purposes but right now helps us to disable bumping when encountering degenerated segments and not break such levels
|
2011-05-04 02:15:10 +02:00 |
|
Chris Taylor
|
2a682044d6
|
Check if a menu closed in a subfunction before setting it's return value, fixing crash when levels are mismatched in multiplayer; Small tidy up for Xcode project
|
2011-04-24 13:34:59 +08:00 |
|
zicodxx
|
d3601c56e3
|
Remember previously set up netgame variables in pilot-related file with extension ngp - due to feature consistency for UDP only
|
2011-04-22 17:14:29 +02:00 |
|
zicodxx
|
c6bc3ff0c1
|
Fixes for RLE- and Texture-cache modifcations: Before freeing now must check if bitmap is already allocated
|
2011-04-22 17:10:33 +02:00 |
|
zicodxx
|
4e21bb9cd2
|
When reading ingame controls only flush mouse delta timer-based since reading is event-based already, allowing high precision no matter the game speed; Removed Mouse smoothing/filtering as it's now unnecessary due to event-based motion handling
|
2011-04-22 13:01:38 +02:00 |
|
zicodxx
|
10aca9a9fe
|
Expanded possibilities for level authors: RLE- and Texture-cache accepts textures bigger than 64x64, only limit being Texture width must be equal height; Increased maximum amount of Segments from 900 to 9000 - not dynamically allocating them, yet
|
2011-04-22 10:33:04 +02:00 |
|
zicodxx
|
89ef310ec6
|
Added SDLK_WORLD_** symbols to keyboard array to enable layout specific keys and make the game more flexible
|
2011-04-21 21:22:46 +02:00 |
|
zicodxx
|
d9bbc359a2
|
When leaving game and still sending extras, don't forget to update the timer so we won't get stuck in an infinite loop
|
2011-04-21 20:52:33 +02:00 |
|
zicodxx
|
a498f20bc9
|
Moved reloading of main descent2.ham (in case mission brings it's own verision) from LoadLevel() to load_mission() so it does not screw missions with ther custom ham-file (like vertigo)
|
2011-04-20 19:42:02 +02:00 |
|
zicodxx
|
3705012d32
|
Resolved termination issue when reading and comparing callsigns fro Coop savestates; Added scores sending after Coop savestate loading as unrestored players will send them when loading new level
|
2011-04-20 01:47:15 +02:00 |
|
Chris Taylor
|
cc5a7d1359
|
Fix broken m3u playlist support (in jukebox_play() path resolving); point to default descent.m3u playlist for Mac OS X (will be included in bundle); better error reporting in mix_play_file(); only make relative Jukebox path in the menu absolute after browsing it - relative paths are more flexible; allow select_file_recursive() to figure out PhysicsFS relative paths passed to it; stop the music if Jukebox is chosen and unavailable (used to just keep playing the last song)
|
2011-04-18 20:32:36 +08:00 |
|
zicodxx
|
54674a47ca
|
Fixing km struct being used after it's being freed by closing the window in EVENT_WINDOW_DRAW
|
2011-04-14 11:15:17 +02:00 |
|
zicodxx
|
1b1fdd6575
|
Reset obj_color for colored object lights when object does not return any usable color so the object will cast white light at least
|
2011-04-13 21:18:18 +02:00 |
|
zicodxx
|
94490492a4
|
Fixing unfreed buffer when credits_show() was called but there was nothing to show me
|
2011-04-13 21:11:22 +02:00 |
|
zicodxx
|
87f0b2ee74
|
Bit more safeguarding in find_plane_line_intersection() and as a result less agressive but more beautiful back-bumping on illegal wall interesections; Scaling of movement from PhysTime to FrameTime now done with vector math functions
|
2011-04-13 21:08:11 +02:00 |
|
zicodxx
|
f42aa8a5fc
|
Improved security for UDP protocol: Add checks for correct packet size and - if possible - valid sender address (valid player) and making sure Clients only accept packets meant for Clients and Hosts only accept packets meant for Hosts
|
2011-04-13 00:19:42 +02:00 |
|
zicodxx
|
f207000f50
|
kconfig weapon cycling fields changed after 0.56 release will automatically fix if version number changes on next release
|
2011-04-12 12:17:24 +02:00 |
|
zicodxx
|
7ae49da7cf
|
Execute set_dynamic_light 60 times per second max since more would just be a waste of CPU time; When executing set_dynamic_light, process ALL lights; Instead of storing light color in objects, do it on-thy-fly but store bitmap-based color in grs_bitmap - vastly speeds up colored dynamic lights; Improved saturation for vertex lighting to make light color a bit more subtile
|
2011-04-12 03:02:51 +02:00 |
|
zicodxx
|
a74fcba858
|
Stupid me forgot to let Omega use it's charge again after debugging it - fixed...
|
2011-04-12 02:31:51 +02:00 |
|
zicodxx
|
baeca7ebfa
|
Little fix for typing-indicator in multiplayer - was showing comma even if no player name was displayed; Removed team_vector from UDP lite_info structure - it's not needed; Removed ShowAllNames from Netgame structure as I see no reason why names display should be host-controlled; Increased UDP_NETGAMES_PAGES to actually show 3000 possible games
|
2011-04-12 00:45:21 +02:00 |
|
zicodxx
|
cf50cda2ce
|
Introduced HUD message class HM_MAYDUPL for messages that may appear once per frame but the player might not able to supress via option
|
2011-04-11 21:27:31 +02:00 |
|
zicodxx
|
74c7bdd7c5
|
Improved syntax for Multi messages/commands: Commands starting with '/' and those accepting arguments as well as Player/Team messages require space after ':' ; Added indicator on HUD to show if a player is typing a message to prevent accidential kills
|
2011-04-11 17:47:16 +02:00 |
|
Chris Taylor
|
fe3f8653e6
|
Allow completely free movement in the automap. It will rotate relative to the viewer. Also fix an unused variable warning.
|
2011-04-10 19:57:06 +08:00 |
|
zicodxx
|
025f04c389
|
Smash texture list when switching between window mode and fullscreen prevent invalid textures; Made code to capture Screenshots more similar between OpenGL and OpenGL ES
|
2011-04-10 12:29:06 +02:00 |
|
Chris Taylor
|
fa14dbe28e
|
Tell people about The Unarchiver for installing from the Mac game CD (thanks, Jonathan\!)
|
2011-04-10 13:34:13 +08:00 |
|
zicodxx
|
6922100a0c
|
Fixed text-related annoyances: Fixed positions of strings TXT_CLOAKED and TXT_CRUISE in CM_FULL_SCREEN; Fixed scaling of tab_stop in briefings (again)
|
2011-04-10 03:11:00 +02:00 |
|
zicodxx
|
c56a87b2de
|
Reworked Omega cannon: Instead of firing every frame, fire in 33.33ms intervals instead which will improve performance, decrease network traffic and make damage in Multiplayer not a totally random factor; To compensate inaccuracy due high velocity of leading omega blob, check for it's distance from parent and delete if distance > MAX
|
2011-04-10 01:48:15 +02:00 |
|
zicodxx
|
d5619e806a
|
Allow multi_send_fire when necessary and not crop to PPS so fix weapons with high firing rate
|
2011-04-08 01:38:00 +02:00 |
|
zicodxx
|
112a9d7d58
|
When sliding along a wall keep wall_part sane to ensure good velocity for slide
|
2011-04-07 22:49:42 +02:00 |
|
zicodxx
|
eb7e001c2f
|
Made lighting code work with actual RGB values and added feature to let certain objects emit colored dynamic light as well as let mine flash red when control center destroyed (OpenGL-only at the moment)
|
2011-04-07 22:32:51 +02:00 |
|
zicodxx
|
7f18afd5d7
|
Client-side implementation for Tracker support by Matt 1360 Vandermeulen including improvements in udp_dns_filladdr and IPv4/IPv6 compability; Very little adjustments by me, too including IPv6 support for Windows (untested); Actual tracker code will follow later as seperate branch when it's done
|
2011-04-05 02:24:34 +02:00 |
|
zicodxx
|
5986b38a80
|
Dead_controlcen_object_num should be set when a new level starts in debug build, too; Setting Total_countdown_time when loading a savestate so SEF-DESTRUCT SEQUENCE ACTIVATED sample will not play soon as timer reaches 0
|
2011-03-29 00:35:41 +02:00 |
|
zicodxx
|
d05344d723
|
Fixes for OpenGL ES implementation
|
2011-03-28 01:57:18 +02:00 |
|
zicodxx
|
8faed77f5f
|
Properly record the event of reset_rear_view() while switching levels to make it work right when rewinding as well; Properly record Countdown seconds for each newdemo frame instead of second change to get display showing up right while playback and still preserving backwards compability; Suspend Game_wind when playing endlevel movie while demo playback
|
2011-03-28 01:39:51 +02:00 |
|
zicodxx
|
6308d5c4b7
|
Added hack to fix illegal segment (104) in D2 Level 12 which should be fixed in the level itself but impossible due to copyright of original game content...
|
2011-03-27 23:58:53 +02:00 |
|
zicodxx
|
4301faad97
|
Another rework for anti-stuck-bumping: Execute after calculation of velocity and add fvi check to make sure we deal with an actual wall collision
|
2011-03-27 18:01:17 +02:00 |
|
zicodxx
|
56348243b5
|
Again reworked new bump hack to only apply when fate == HIT_WALL (to not break level SKYBOX) and made bumping by distance between object position and wall hit point; Removed/handled some safety checks in find_plane_line_intersection() to make sliding along joining edges smoother again while bad values *should* be handled in pyhsics.c and not make object warp-crashing tru the whole level or stuck in walls (fvi code should still be rewritten tho)
|
2011-03-14 11:07:39 +01:00 |
|
zicodxx
|
bdade98976
|
Due to lazy copy&paste sliding up/down speed was divided by 2 - fixed
|
2011-03-10 21:39:49 +01:00 |
|
zicodxx
|
9280731d60
|
Be safer not interrupting other ports of descent or the original MS-DOS game when it comes to reading song files: Try reading from MISSION_NAME.sngdxx to have a way reading a song file for a specific mission outside the mission's HOG, next try reading from descent.sngdxx which shall serve as an alternative song file specifically for DXX and then try descent.sng. This should give authors enough possibilities to add OSTs for all different versions of the game without the need to publish different versions of their missions
|
2011-03-06 21:02:50 +01:00 |
|
zicodxx
|
d3b4d9485e
|
Using gr_init_bitmap for hoard data initialization; Correctly free hoard data before the program closes; When reloading the main HAM files, made sure it does not try to reload main game sounds from shareware/demo HAM
|
2011-02-24 11:28:59 +01:00 |
|
zicodxx
|
36c291d5d5
|
Fix for last revision: Correctly initialize cv_fade_level and cv_blend_func when creating initializing a canvas
|
2011-02-24 00:21:50 +01:00 |
|
zicodxx
|
c960d5505a
|
Added cv_fade_level to canvas structure to replace Gr_scanline_darkening_level; Added cv_blend_func to canvas structure to set blending; Introduced gr_settransblend to set cv_fade_level and cv_blend_func; Added function to set normal blending, additive alpha blending and additive color blending; Moved Special transparency effects from g3_draw_bitmap to render_object to set individual transparency and/or blending for each object outside of OpenGL-specific code; Added special blending for fuelcenter and force field effects as well; Removed unused LASER_HACK code; Renamed OglAlphaEffects variable of PalyerCfg to AlphaEffects as I plan to implement this kind of effects for Software renderer, too
|
2011-02-23 17:46:39 +01:00 |
|
Chris Taylor
|
635dcfee4f
|
Fix a critical bug in string_array_add - when d_reallocing the buffer containing the string data, update all the pointers in '*list' as well as next_str, preventing ugly crashes
|
2011-02-21 14:37:03 +08:00 |
|
zicodxx
|
13b2de4326
|
Added another call for read_hamfile right after a level loads in case a third party mission brings it's own version of the main game HAM file
|
2011-02-19 01:20:58 +01:00 |
|
zicodxx
|
ffee2235a9
|
Set zNear for gluPerspective to 0.1 to prevent ugly clipping while passing illusory walls; Set zFar to 5000.0 to prevent disappearing automap in large distance - all still sane enough for Intel chips so my eeePC is safe nyahahaha
|
2011-02-18 00:43:05 +01:00 |
|
zicodxx
|
d020a3136e
|
Draw laser effects with special blending instead of disabled DepthMask; Added special blending for transparency effects as well to let them kick more ass; Corrections while rendering outside part of endlevel sequence with disabled depth testing and dynamically changing Render_depth to make the mine exit visible again while not rendering the exit tunnel tru the planet terrain
|
2011-02-18 00:17:51 +01:00 |
|
zicodxx
|
d57eed80b5
|
When recording cloaking or unclocking wall to demo, make sure the very first frame is recorded, too so wall will correctly transform back when rewinding the demo
|
2011-02-17 11:17:53 +01:00 |
|
zicodxx
|
bddb2e97a2
|
Fixed PRShot feature which was accidentially broken while implementation of OpenGL ES support
|
2011-02-15 14:44:03 +01:00 |
|
zicodxx
|
dd4a5ae0d8
|
For credits and briefings moved all code happened in EVENT_IDLE to EVENT_WINDOW_DRAW since a jitterish Joystick could slow down text rendering
|
2011-02-14 23:52:33 +01:00 |
|
zicodxx
|
d6fbef4e43
|
Moved all these unsorted global cheat variables to a handy structure; Simplified reading of the cheats without trying to make it complicated so no one finds them (everyone can get the source); Removed one or two cheats which carry more garbage than they are worth; Added replacement for the bittersweet cheat; Made FPS Counter an option of Graphics menu
|
2011-02-14 22:27:07 +01:00 |
|
zicodxx
|
097dd32c5a
|
New approach to handle a bunch of closing windows - removed window_do_close() again, reworked game_leave_menus by checking window_get_front() and closing this window until it's Game_wind, while event_process checking if window still exists after drawing and if not, take next window from previous which should be updated by then
|
2011-02-12 23:58:41 +01:00 |
|
zicodxx
|
1f5fde02c7
|
Controls.select_weapon_count needs to be incremented differently to get non-0 when we want to select the laser type weapon; Readded jumping from first to last item in newmenu and vice versa
|
2011-02-11 12:24:02 +01:00 |
|
zicodxx
|
43ebcd249b
|
Added secondary weapon indicators to new reticle types; Fixed disks being drawn as circles - whoops
|
2011-02-10 20:53:23 +01:00 |
|
zicodxx
|
a5c3bc430c
|
Fixed compiler warning related to generation of game_id for Coop Savegames
|
2011-02-10 18:56:33 +01:00 |
|
zicodxx
|
031420cf74
|
Simplified ogl version of gr.c in terms of SDL video flags and fullscreen toggle; Added command-line/INI option to remove borders from windowed program
|
2011-02-10 15:30:08 +01:00 |
|
zicodxx
|
5bac68c5c8
|
Fixed broken FlightSim indicator on Automap; Fixed Assert for using mouse buttons in kconfig (which can react to UP and DOWN states); Added scrolling support for menus flagged tiny_mode and all_text
|
2011-02-10 14:09:10 +01:00 |
|
zicodxx
|
7b5102a0f9
|
Fixed memory leak produced by drawing circles and disks
|
2011-02-09 17:18:35 +01:00 |
|
zicodxx
|
0c0a55e65b
|
Fixed little memory issue while playing movies introduced by overhaul of window closing
|
2011-02-09 16:52:13 +01:00 |
|
zicodxx
|
753178a30f
|
Reintroduced Savegames for Coop games using the original Descent2 implementation but correctly handling player slots in their pre-loading state preventing accidential player shifting which never really worked in the original game and we do not want with UDP anyways - was all tested but still might need a fix or two; Added some missing initializations for saving players and AI stuff; Completely ripped out remnants of saving between levels code
|
2011-02-09 12:58:32 +01:00 |
|
zicodxx
|
488c44f9cf
|
Increased key repeat values to react a little more like the MS-DOS version of the game but a little slower so I can still stop at the correct item; In automap reorganized control_info swapping as well as wiggle state handling to properly work in connection with the new input handling and Multiplayer where game is not paused
|
2011-02-06 14:25:37 +01:00 |
|
zicodxx
|
c7a65c9313
|
Included new window structure flag w_closing_state and let window_close() set this flag - after drawing all windows, check them again and call window_do_close() which then actually closes the window(s) marked to. Solving all sorts of problems when windows close while being drawn (network error messageboxes, game_leave_menus(), etc.)
|
2011-02-03 11:48:27 +01:00 |
|
zicodxx
|
7f49e118da
|
Corrected values for gr_ubox while drawing a window_view to not mess up at some widescreen resolutions
|
2011-02-03 01:10:30 +01:00 |
|
zicodxx
|
fbf27484f1
|
Little fixes for recent kconfig/event overhaul: Automap inputs read by kconfig should be processed by input rather than idle and automap frame calculations should be done while drawing; Fixed drop_bomb_count which could roll over to 255 dropping bombs without end
|
2011-02-03 01:05:06 +01:00 |
|
zicodxx
|
3c9c7af995
|
Little more smoothness for Multiplayer: Before dropping Powerups in random segment, make sure it's accessible by the player who drops it; Got rid of goto in InitPlayerPositions() and made code more D2-ish; Allow host to send 50 object/extra packets per second which does not overload network stack, yet but speeds up joining
|
2011-02-02 23:51:34 +01:00 |
|
zicodxx
|
21836c5c6b
|
After rendering Reboot reticle, reset glLineWidth to default value again
|
2011-02-02 02:12:05 +01:00 |
|
zicodxx
|
96782e092a
|
Added event types for all input actions; Rewrote kconfig code to work with events; static defined inputs will not trigger kconfig-mapped inputs anymore; Simplified keyboard, mouse and joystick code a lot due to event-based handling; Added function to toggle SDL key repeats on and off; Put timer_update() to event_process; Removed return when event_poll() is idle to get cursor hiding to work again; Added a small delay between cursoe hiding and re-enabling to cursor will not accidentially enable by SDL event centering cursor while hiding
|
2011-02-02 01:36:49 +01:00 |
|
zicodxx
|
518e01fbe8
|
In event_process() check for wind->next before sending EVENT_WINDOW_DRAW in case drawing will free wind
|
2011-01-26 11:55:47 +01:00 |
|
zicodxx
|
fd740500c1
|
Some improvements and cleanups for Persistent Debris: Let them bounce, added drag and let them explode on hazardous walls
|
2011-01-24 21:51:08 +01:00 |
|
zicodxx
|
3a91bdb89d
|
Added some new conditions to the bumping code: Only bump objects which can slide (alive robots and players) and added a count making sure this function can never get stuck in an infinite loop
|
2011-01-24 20:37:47 +01:00 |
|
zicodxx
|
4f160df96e
|
Revamped what previously was the BUMP_HACK by checking if an object is actually intersecting a segment and move it out towards segment center just after the initial object movement composed by fvi and before velocity is made - should make inaccurate wall collisions a bit smoother and prevent objects from goind inside or through walls, too
|
2011-01-24 15:26:08 +01:00 |
|
zicodxx
|
ee56fead58
|
For new player, set ReticleSize to 0 which is the smallest size
|
2011-01-23 18:21:13 +01:00 |
|
zicodxx
|
0fac02ecee
|
Increasing the collision count for objects so there can be 8 for all objects; also do not increase count when colliding with a powerup as it should not change our movement
|
2011-01-23 11:59:48 +01:00 |
|
zicodxx
|
169df35455
|
Taking out one Int3 in init_boss_segments() stopping the program if there is more than one boss in level - taking out because it's not fatal or unsafe to do that; Also removed one conditional size_check which was meant for one mprintf we removed long ago
|
2011-01-23 09:57:52 +01:00 |
|
zicodxx
|
4e3eeee326
|
Removed fvi_a.h and added the asm code from it as comment to fvi.c in case we need it again some day
|
2011-01-22 21:43:21 +01:00 |
|
zicodxx
|
37f59aa896
|
in show_framerate do not use gr_get_string_size at all but rather use hardcoded coordinates - less CPU-intense
|
2011-01-22 18:46:08 +01:00 |
|
zicodxx
|
da43cc7d37
|
Added swapping for 64Bit sized integers in case we want to store/read them some day (i.e. new Savegame version storing object instead of object_rw)
|
2011-01-22 18:14:16 +01:00 |
|
zicodxx
|
78569ea1bc
|
Fixed small issue parsing killreactor command in Multiplayer
|
2011-01-22 17:56:25 +01:00 |
|
zicodxx
|
5eb05548c3
|
Added timer_update() to stop/start/reset_time() functions so resumed last_timer_value will be precise; Added new FPS counter which actually does count the frames rendered per second and is less irritating; Added timer_dleay2 call to console to not stress CPU too much; Imporoved placement for show_time(), multi messages, marker messages and orb counts
|
2011-01-22 13:30:20 +01:00 |
|
zicodxx
|
3046fcf7dd
|
Protection for negative array index in find_seg_side was accidentially checking for vv1 != -1 - fixed that
|
2011-01-21 17:45:29 +01:00 |
|
zicodxx
|
33d3b1c6a8
|
Added a simple random function for the Jukebox; Removed one small printf I once added for debugging
|
2011-01-20 12:17:30 +01:00 |
|
zicodxx
|
e60a7e1bca
|
Additional commit for last revision - didn't selected all files properly
|
2011-01-19 21:52:01 +01:00 |
|
zicodxx
|
9f6cbc8c6c
|
Retired most of the Assembler code except the generic i386 scanline renderer; Removed all leftovers of Direct3D implementation; On the way make a some code more similar between D1X-Rebirth and D2X-Rebirth
|
2011-01-19 21:35:14 +01:00 |
|
zicodxx
|
fd53a1264b
|
On NETGAMES list Bounty mode was not shown since MODE_NAMES define was not adjusted - so in the end introduced GMNames and GMNamesShrt Arrays in multi.c for globally displaying full or short Multiplayer game mode names
|
2011-01-19 19:55:38 +01:00 |
|
zicodxx
|
16f2b23fe2
|
Fix for showing bounty target in kill list - was not actually checking if player_num == Bounty_target; When Bounty_target player leaves game host must select a new target so the game can proceed
|
2011-01-19 12:22:01 +01:00 |
|
zicodxx
|
a1f7da133e
|
Introducing new BOUNTY Multiplayer game mode by Matt -1360- Vandermeulen <matt1360@gmail.com>
|
2011-01-19 02:19:17 +01:00 |
|
zicodxx
|
931d134357
|
Instead of calling object/extras sending every frame, use a delay of 100ms between packet send to not overload the network stack
|
2011-01-19 00:07:10 +01:00 |
|
zicodxx
|
9cace92b4e
|
In net_udp_send_objects() player_num byte was not considered for mode 1 resulting on incorrect object count for this mode
|
2011-01-18 19:43:07 +01:00 |
|
zicodxx
|
ab79094700
|
Allowing loading a savestate while being in death sequence and resetting Dead_player_camera correctly in init_player_stats_level() so forther death sequences won't screw up
|
2011-01-18 15:53:28 +01:00 |
|
zicodxx
|
c0864b71a9
|
Fixed small bug in net_udp_list_join_poll() which was introduced when I reorganized the events for making console render global
|
2011-01-18 14:37:19 +01:00 |
|
zicodxx
|
59344482e3
|
Fixing memory corruptions produced by the scanline renderer; Dynamically allocate y_pointers to free scanline renderer from resolution limits
|
2011-01-17 21:00:52 +01:00 |
|