Menu

Tree [24379f] master /
 History

HTTPS access


File Date Author Commit
 .analysis 2025-11-23 Stefan van der Wel Stefan van der Wel [b4baf6] Fix campaign AI production and saboteur mechanics
 .github 2025-11-16 Stefan van der Wel Stefan van der Wel [b47c2b] Integrate installer/package creation into build...
 .vscode 2025-11-16 Stefan van der Wel Stefan van der Wel [c229f6] Add Windows build support to VS Code/Cursor
 IDE 2025-11-23 Stefan van der Wel Stefan van der Wel [b4baf6] Fix campaign AI production and saboteur mechanics
 config 5 days ago Stefan van der Wel Stefan van der Wel [3f0d34] Add configurable unit limits, improve harvester...
 data 2025-11-30 Stefan van der Wel Stefan van der Wel [f9a53b] Version 0.99: Complete mod system implementation
 debian 2017-01-22 Richard Schaller Richard Schaller [5cbf9d] Add man page for dunelegacy (Patch by Matthias ...
 include 4 days ago Stefan van der Wel Stefan van der Wel [bdd2a4] Bump version to 0.99.2 and simplify release notes
 legacy 2025-11-16 svan058 svan058 [44cd39] Fix Windows installer for CMake/CPack build system
 m4 2016-04-03 Richard Schaller Richard Schaller [67458b] Adapt Win32 cross-compile script to SDL2; insta...
 release_notes 4 days ago Stefan van der Wel Stefan van der Wel [bdd2a4] Bump version to 0.99.2 and simplify release notes
 scripts 2025-11-16 Stefan van der Wel Stefan van der Wel [a8e7fe] Fix CPack caching issue - prevent stale files i...
 sourceforge_website 4 days ago Stefan van der Wel Stefan van der Wel [24379f] Add macOS code signing to CMake build
 src 4 days ago Stefan van der Wel Stefan van der Wel [24379f] Add macOS code signing to CMake build
 tests 2025-04-13 svan058 svan058 [b6d94c] Add CMake build system and MinGW support with i...
 .cursorrules 4 days ago Stefan van der Wel Stefan van der Wel [bdd2a4] Bump version to 0.99.2 and simplify release notes
 .gitattributes 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 .gitignore 2025-11-16 Stefan van der Wel Stefan van der Wel [a8e7fe] Fix CPack caching issue - prevent stale files i...
 AUTHORS 2025-04-12 svan058 svan058 [1ae58c] updates to the exe build
 BUILD.md 2025-11-16 Stefan van der Wel Stefan van der Wel [a8e7fe] Fix CPack caching issue - prevent stale files i...
 CMakeLists.txt 4 days ago Stefan van der Wel Stefan van der Wel [bdd2a4] Bump version to 0.99.2 and simplify release notes
 COPYING 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 ChangeLog 2025-11-08 Stefan van der Wel Stefan van der Wel [4ad8fe] further updates
 Doxyfile 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 INSTALL 2019-03-30 Richard Schaller Richard Schaller [3bf27f] Use truetype font for all texts
 INSTALLER_NOTES.md 2025-11-23 Stefan van der Wel Stefan van der Wel [b4baf6] Fix campaign AI production and saboteur mechanics
 Makefile.am 2025-11-23 Stefan van der Wel Stefan van der Wel [b4baf6] Fix campaign AI production and saboteur mechanics
 NEWS 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 PLAY-NOW-INSTRUCTIONS.md 2025-11-23 Stefan van der Wel Stefan van der Wel [b4baf6] Fix campaign AI production and saboteur mechanics
 README 2025-11-16 Stefan van der Wel Stefan van der Wel [aa4145] Release 0.98.7.0 - Multiplayer infrastructure &...
 SoftwareDesign.txt 2016-01-27 Richard Schaller Richard Schaller [1b5587] Update documentation
 ToDo.txt 2025-11-16 Stefan van der Wel Stefan van der Wel [051743] Update ToDo.txt: merge items from documents/tod...
 WINDOWS_QUICKSTART.md 2025-11-16 svan058 svan058 [44cd39] Fix Windows installer for CMake/CPack build system
 buildclangdebug.sh 2016-01-28 Richard Schaller Richard Schaller [cb1fbb] Fix some clang warnings
 buildcrosswin32.sh 2016-12-04 Richard Schaller Richard Schaller [ca7181] Drop SDL2 and SDL2-mixer source; make buildcros...
 builddebug.sh 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 buildlocal.sh 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 clean.sh 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 config.guess 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 config.sub 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 configure.ac 2025-11-16 Stefan van der Wel Stefan van der Wel [aa4145] Release 0.98.7.0 - Multiplayer infrastructure &...
 create_dmg.sh 2025-11-16 Stefan van der Wel Stefan van der Wel [460d86] Add option to disable credits sound effect
 dunelegacy-128x128.png 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 dunelegacy.6 2017-01-22 Richard Schaller Richard Schaller [5cbf9d] Add man page for dunelegacy (Patch by Matthias ...
 dunelegacy.desktop 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 dunelegacy.icns 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 dunelegacy.ico 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 dunelegacy.png 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 dunelegacy.spec 2017-01-22 Richard Schaller Richard Schaller [5cbf9d] Add man page for dunelegacy (Patch by Matthias ...
 dunelegacy.svg 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 resource.rc 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 runUnitTests.sh 2013-03-02 Richard Schaller Richard Schaller [555c45] Initial commit (Dune Legacy 0.96.3)
 scanbuild.sh 2013-03-03 Richard Schaller Richard Schaller [0579ad] Added script for running scanbuild
 updatelocale.sh 2013-03-03 Richard Schaller Richard Schaller [c98923] Added script for updating the locale
 vcpkg.json 2025-11-16 Stefan van der Wel Stefan van der Wel [aa4145] Release 0.98.7.0 - Multiplayer infrastructure &...
 verify-install.bat 2025-11-23 Stefan van der Wel Stefan van der Wel [b4baf6] Fix campaign AI production and saboteur mechanics

Read Me

		/-----------------------------------------------\
		|                               				|
		|    Dune Legacy 0.98.7 readme    			|
		|    ---------------------------------------    |
		|    current dev: stefanvanderwelATgmail.com    |
		\-----------------------------------------------/

--------------------------------------------------------------
Web: https://dunelegacy.com
Source: https://github.com/svan058/dunelegacy
Discord: https://discord.gg/6sAcZr6y3B
--------------------------------------------------------------

IMPORTANT:
This software is provided as is, and you are running it at your own risk.  I'm not responsible if any harm results
from you aquiring, or running this software.  If you distribute this software, make sure this readme file is included.
The program Dune Legacy is an modernized clone of the excellent Westwood Studios game "Dune 2". It is ridiculusly easy to find
Dune2 on the net anyways, but I won't provide it.  I think you can still even buy it from Westwood studios, so do that.
There exists a mod called Superdune 2. The PAK-Files Superdune 2 provides are nearly the same except SCENARIO.PAK.
 
This program would not have been created without the use of the excellent SDL2 library and its extensions.  Thanks guys :).


Getting Started
---------------

The following PAK-files from the original Dune 2 are needed to play Dune Legacy:
	HARK.PAK
	ATRE.PAK
	ORDOS.PAK
	ENGLISH.PAK
	DUNE.PAK
	SCENARIO.PAK
	MENTAT.PAK
	VOC.PAK
	MERC.PAK
	FINALE.PAK
	INTRO.PAK
	INTROVOC.PAK
	SOUND.PAK
	GERMAN.PAK (for playing in German)
	FRENCH.PAK (for playing in French)

It depends on your system and installation where to put these files. LEGACY.PAK is supplied with Dune Legacy and is already
in the data directory. All the other files should be copied there too. If you are not allowed to copy files there you may
copy these files inside the dunelegacy configuration directory (e.g. ~/.config/dunelegacy/data/ on unix).

Linux:
It depends on how the game was compiled. Normally you should put these files under /usr/share/dunelegacy/ or /usr/local/share/dunelegacy/ .
Just look for LEGACY.PAK. If you do not have root access to your system you should put them in your home directory under ~/.config/dunelegacy/data/ .

Windows:
The installer has already asked for the files and put them in the installation directory. If not put the PAK-files inside your installation folder or 
if you do not have administrator privileges you should put them to C:\Documents and Settings\<YourName>\Application Data\dunelegacy\data\ .


MAC OS X:
The PAK-files have to be copied inside the application bundle. If you have followed the steps in the supplied dmg you have already copied them there.
Otherwise just right-click on the bundle and select "Show Bundle Content". Then navigate into "Contents" and then into "Resources". There you will 
find LEGACY.PAK. Put the other PAK-files there too. Alternativly you can put them in your home directory under ~/.config/dunelegacy/data/ but putting 
them inside the application bundle is the preferred way.

IMPORTANT - Network Permissions on macOS:
When first accessing multiplayer features, macOS may prompt you to allow network access for Dune Legacy. Click "Allow" to enable multiplayer 
functionality. The game will automatically retry network initialization once permissions are granted. If the game seems unresponsive in 
multiplayer mode, check System Preferences > Security & Privacy > Privacy > Network to ensure Dune Legacy has network access.



Keyboard Shortcuts
------------------

General Keyboard Shortcuts:
 Escape							-	Go to menu
 Space							-	Pause game
 Alt + Enter					-	Toggle fullscreen
 Alt + Tab						-	Switch to other application
 Print Key or Ctrl + P			-	Save screenshot as ScreenshotX.bmp with increasing numbers for X
 Enter							-	Start/Stop chatting

 Key F1							-	Zoomlevel x1
 Key F2							-	Zoomlevel x2
 Key F3							-	Zoomlevel x3

 Key T							-	Toggle display of current game time
 Key F10						-	Toggle sound effects and voice
 Key F11						-	Toggle music
 Key F12						-	Toggle display of FPS
 Key Up, Down, Left or Right	-	Move on the map

 Key G							-	Cycle through construction yards
 Key F							-	Cycle through factories/other builders

 Key F4							-	Skip 10 seconds (only in singleplayer)
 Key F5							-	Skip 30 seconds (only in singleplayer)
 Key F6							-	Skip 2 minutes (only in singleplayer)
 Key -							-	Decrease gamespeed (only in singleplayer)
 Key +							-	Increase gamespeed (only in singleplayer)

 Ctrl + (Key 1 to Key 9)		-	Save the list of selected units as unit group 1 to 9
 Key 1 to Key 9					-	Select units from unit group 1 to 9
 Shift + (Key 1 to Key 9)		-	Add all units from unit group 1 to 9 to the list of currently selected units
 Key 0							-	Deselect all currently selected units
 Ctrl + Key 0					-	Remove currently selected units form all unit groups (group 1-9)

 Key M							-	Order unit to move to some position
 Key A							-	Order selected units to attack some unit, structure or position
 Key C							-	Order selected infantry units to capture some structure
 Key R							-	Repair selected structure or send selected units to repair yard
 Key H							-	Return selected harvester
 Key D							-	Request a carryall drop (only if this game option is enabled)
 Key U							-	Upgrade selected structure
 Key P							-	Place a structure (if a construction yard is selected)

Map Editor:
 Print Key or Ctrl + P			-	Save a picture of the whole map as <Mapname>.bmp
 Ctrl + Z						-	Undo last edit
 Ctrl + Y						-	Redo last edit



Configuration file
------------------

If you want to fine tune the configuration of Dune Legacy you might want to take a look at the configuration file "Dune Legacy.ini". Depending on your system it 
is either placed in ~/.config/dunelegacy (on Linux), ~/Library/Application Support/Dune Legacy (on Mac OS X) or in C:\Documents and Settings\<YourName>\Application Data\dunelegacy\ (on Windows).


Internet Game
-------------

To play online via Internet you have to manually enable port forwarding if you use a NAT Router. Forward the Dune Legacy Server Port (Default is 28747) from your NAT Router to your computer. Use the same port on your router as configured in Dune Legacy.
Example: If your machine has IP 192.168.123.1 and your using the default Dune Legacy Port, than forward port 28747 from your router to 192.168.123.1:28747.


Troubleshooting
---------------

Common Issues:

1. Multiplayer crashes on macOS:
   - Grant network permissions when prompted by macOS
   - Check System Preferences > Security & Privacy > Privacy > Network
   - The game will automatically retry network initialization

2. Game won't start:
   - Ensure all required PAK files are in the correct location
   - Check that SDL2 libraries are properly installed
   - Verify the game has necessary file permissions

3. No sound:
   - Check that SDL2_mixer is installed
   - Verify audio device settings
   - Try toggling sound in game options (F10/F11)

4. Performance issues:
   - Try different zoom levels (F1/F2/F3)
   - Reduce graphics settings if available
   - Close other applications to free memory


Recent Changes (v0.98.7.0)
--------------------------

Multiplayer & Infrastructure:
- NEW: Metaserver moved to https://dunelegacy.com with full HTTPS support
- NEW: libcurl integration for secure HTTPS connections
- NEW: Automatic metaserver URL migration for existing installations
- NEW: Game statistics tracking (recent games, popular maps)
- IMPROVED: Server deduplication using unique game identifiers
- IMPROVED: Privacy - player IPs no longer displayed publicly
- FIXED: Multiplayer game announcements now work reliably

Build System & Development:
- NEW: vcpkg integration for consistent cross-platform builds
- NEW: Automated DMG installer creation for macOS
- NEW: VS Code/Cursor build tasks with clear warnings
- NEW: Simplified build documentation with platform-specific guides
- IMPROVED: CMake packaging workflow (DMG, NSIS, DEB, RPM, TGZ)
- IMPROVED: macOS app bundle now properly packages all dependencies

Website & Project:
- NEW: Project moved to GitHub for better collaboration
- NEW: Modern website at https://dunelegacy.com
- NEW: GitHub Actions CI/CD for automated builds
- NEW: DigitalOcean hosting for metaserver and website