Commit Graph
366 Commits
Author SHA1 Message Date
Anders Jenbo b1ffdca0a3 ♻️ make better use of enums 2021-04-08 20:29:16 +02:00
Gleb Mazovetskiy da7567f06e InitPlrGfx: Only alloc enough for the class
Previously, the allocation size was the maximum size over all the classes.

RAM usage per player:

* Before: 2.2 MiB (any class)
* After:
  * Warrior: 2.0 MiB
  * Rogue: 1.5 MiB
  * Sorcerer: 1.6 MiB
  * Monk: 1.7 MiB

We now also only allocate memory in multi-player as needed.

This means the game will only use as much RAM for player graphics
as there are players currently in the game.

Less RAM is used for each player because class is now taken into account.
2021-04-07 06:52:07 +02:00
Anders Jenbo bfb3c11c2b 🎨 Change namespace to devilution 2021-04-06 15:21:25 +02:00
Anders Jenbo 630e507f63 🚚 Apply namespace 2021-04-06 15:21:25 +02:00
Anders Jenbo bc3dc545da 🔥 Remove unused parts of game creation logic 2021-04-06 12:41:00 +02:00
Anders Jenbo 501c536017 🎨 Clean up appfat 2021-04-06 11:57:08 +02:00
Gleb Mazovetskiy 0f3951744f diablo.ini: Rename "Fast Walk" to "Run in Town" (#1326) 2021-04-03 02:37:33 +02:00
Anders Jenbo bba73ea20f ✨ Handle mixed item origins in multiplayer 2021-04-01 14:52:44 +02:00
Juliano Leal Goncalves 800dbce066 ♻️ Move options-related structs to new 'options.h' file 2021-03-27 03:26:44 +01:00
Anders Jenbo a69a76941e ♻️ Clean up InitCutscene 2021-03-24 21:50:19 +01:00
Anders Jenbo 38fdf34c14 💄 Apply code style 2021-03-20 20:39:28 +01:00
Anders Jenbo 60cc8b0df4 🚨 Correct type of event_types
Fixes #1197
2021-03-15 12:18:51 +01:00
Anders Jenbo 17803d5923 ♻️ Apply proper types to PlayerStruct 2021-03-14 15:38:23 +01:00
Juliano Leal Goncalves 103cde53ff ♻️ Make options struct hierarchical 2021-03-10 10:11:42 +01:00
Anders Jenbo dd73ff2cf0 🚩 Add option for disabeling frindly fire (#1104) 2021-03-06 04:15:54 +01:00
Anders Jenbo d37fb68809 Make header checks portable 2021-03-02 12:17:13 +01:00
Anders Jenbo 39999791b3 Revamp ini options and sync in multiplayer
[NetMsg]
F12=Now you DIE!
F11=Here's something for you.
F10=Follow me.
F9=I need help! Come Here!

[Game]
Speed=50
Fast Walk=1
Grab Input=0
Theo Quest=0
Cow Quest=0

[Audio]
Sound Volume=0
Music Volume=0
Walking Sound=1

[Graphics]
Fullscreen=1
Fit to Screen=1
Scaling Quality=2
Integer Scaling=0
Vertical Sync=1
Blended Transparency=1
Gamma Correction=100
Color Cycling=1

[Diablo]
Intro=0

[Hellfire]
Intro=0
SItem=

[Phone Book]
Entry1=127.0.0.1

[Network]
Bind Address=0.0.0.0
2021-03-01 11:52:26 +01:00
Anders Jenbo 70ca20b59f Clean up Hellfire special cases 2021-02-25 05:50:24 +01:00
Anders Jenbo b4e78c5e79 Remove some unused junk 2021-02-25 05:37:17 +01:00
Anders Jenbo 36a196389b Fix remaning basic compiler errors and warnings 2021-02-22 13:51:42 +01:00
pionere 97d53ced7e get rid of a few warnings (strncpy) 2021-02-19 22:04:11 +01:00
pionere d5a0fa8e85 get rid of a few warnings 2021-02-19 22:04:11 +01:00
qndel ab9911064f unify checks for single and multiplayer 2021-02-18 22:32:01 +01:00
qndel c0f5749728 Fix RNG diverging during level generation depending on the code path
The consequences has mostly mitigated after wards, but this will make things make more sens when analysing the state of the code.
2021-02-01 06:44:16 +01:00
Anders Jenbo aa7354aa57 Merge branch 'master' of github.com:diasurgical/devilution 2021-01-19 03:48:13 +01:00
FluffyQuack e3d1b19761 A bunch of comments explaining how variables are used. Mainly for structs.h, but a tiny bit for movement code and game loop as well. 2021-01-19 03:44:47 +01:00
Anders Jenbo 4ffbb32952 [hellfire] Allow continuing Diablo saves in Hellfire and vice versa 2021-01-13 16:10:21 +01:00
Anders Jenbo 6786ebbd1a Merge branch 'master' of github.com:diasurgical/devilution 2021-01-11 19:28:45 +01:00
Anders Jenbo 78eca7c892 [hellfire] NetInit 2021-01-11 19:02:15 +01:00
Anders Jenbo 5bb5d842d3 [hellfire] multi_process_network_packets 2021-01-11 11:52:25 +01:00
Anders Jenbo 3a8dab462e [hellfire] multi_send_msg_packet 2021-01-11 11:39:06 +01:00
Anders Jenbo 0c96e32f19 Unify all defines, enums and structs 2021-01-08 20:53:06 +01:00
Anders Jenbo 6f8f4c3293 Unify another chunk of simple Hellfire code paths 2021-01-07 07:19:07 +01:00
Anders Jenbo 043d15db66 [hellfire] PackPlayer and frinds 2021-01-01 01:34:54 +01:00
Anders Jenbo 4ae75753c8 Merge branch 'master' of github.com:diasurgical/devilution 2020-11-09 01:24:02 +01:00
Anders Jenbo c19a15471b Reorder multi.cpp 2020-11-04 11:02:27 +01:00
Anders Jenbo 72e2637061 Merge branch 'master' of github.com:diasurgical/devilution 2020-10-25 17:38:06 +01:00
Gleb Mazovetskiy ec329e645c Fix all "no-write-strings" warnings 2020-10-25 15:37:51 +01:00
Anders Jenbo e90f84dd03 Merge branch 'master' of github.com:diasurgical/devilution 2020-10-22 22:14:49 +02:00
qndel 36dba1cc1c cleanup (#2127) 2020-10-22 17:26:24 +02:00
Anders Jenbo e073422ce7 Unify executable for Spawn and Retail
The game will now autodetect if it should run in shareware mode or full
retail based on the found mpq file. Additionally it can beforced in the
shareware mode with --spawn even if the retail data is found.

This simplifies a lot of the spagetty code and lets us better refactor,
also worth noteing is that we won't have to setup a secound set of build
tests.
2020-10-20 19:42:01 +02:00
Anders Jenbo b62b3375bd Merge branch 'master' of github.com:diasurgical/devilution 2020-10-13 02:05:36 +02:00
qndel fd5b12710f some defines 2020-10-12 14:16:39 +02:00
Anders Jenbo 2d6c1efeab Merge branch 'master' of github.com:diasurgical/devilution 2020-10-12 10:46:28 +02:00
qndel 09c085b78e minor cleanup 2020-10-12 00:08:59 +02:00
Anders Jenbo 7e04c63977 Merge branch 'hellfire' of github.com:diasurgical/devilution 2020-10-11 23:53:07 +02:00
Anders Jenbo f1a193e1e2 Merge branch 'master' of github.com:diasurgical/devilution 2020-10-11 07:01:25 +02:00
pionere 92cc9d589c Apply another bunch defines 2020-10-11 06:42:13 +02:00
pionere f0a51ccf65 use defs instead of literals 2020-10-11 06:37:14 +02:00
Anders Jenbo e0a94686b0 Add game speed to multiplayer
Speed can only be set on game creation
2020-09-28 07:03:22 +02:00