utility.h: Change Buffer's interface to be more compatible with SharedBuffer's interf...
[oweals/minetest.git] / src / defaultsettings.cpp
index 435eefd86339850349ed5e4e7d676e051cadfed4..fbc22867d1505783c6858c29cdadc1eba7fd03af 100644 (file)
@@ -17,85 +17,99 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */
 
-#include "utility.h"
+#include "settings.h"
 
-extern Settings g_settings;
-
-void set_default_settings()
+void set_default_settings(Settings *settings)
 {
        // Client and server
 
-       g_settings.setDefault("port", "");
-       g_settings.setDefault("name", "");
-       g_settings.setDefault("footprints", "false");
+       settings->setDefault("port", "");
+       settings->setDefault("name", "");
+       settings->setDefault("footprints", "false");
 
        // Client stuff
 
-       g_settings.setDefault("keymap_forward", "KEY_KEY_W");
-       g_settings.setDefault("keymap_backward", "KEY_KEY_S");
-       g_settings.setDefault("keymap_left", "KEY_KEY_A");
-       g_settings.setDefault("keymap_right", "KEY_KEY_D");
-       g_settings.setDefault("keymap_jump", "KEY_SPACE");
-       g_settings.setDefault("keymap_sneak", "KEY_LSHIFT");
-       g_settings.setDefault("keymap_inventory", "KEY_KEY_I");
-       g_settings.setDefault("keymap_chat", "KEY_KEY_T");
-       g_settings.setDefault("keymap_rangeselect", "KEY_KEY_R");
-       g_settings.setDefault("keymap_freemove", "KEY_KEY_K");
-       g_settings.setDefault("keymap_fastmove", "KEY_KEY_J");
-       g_settings.setDefault("keymap_frametime_graph", "KEY_F1");
-       g_settings.setDefault("keymap_screenshot", "KEY_F12");
+       settings->setDefault("keymap_forward", "KEY_KEY_W");
+       settings->setDefault("keymap_backward", "KEY_KEY_S");
+       settings->setDefault("keymap_left", "KEY_KEY_A");
+       settings->setDefault("keymap_right", "KEY_KEY_D");
+       settings->setDefault("keymap_jump", "KEY_SPACE");
+       settings->setDefault("keymap_sneak", "KEY_LSHIFT");
+       settings->setDefault("keymap_inventory", "KEY_KEY_I");
+       settings->setDefault("keymap_special1", "KEY_KEY_E");
+       settings->setDefault("keymap_chat", "KEY_KEY_T");
+       settings->setDefault("keymap_cmd", "/");
+       settings->setDefault("keymap_rangeselect", "KEY_KEY_R");
+       settings->setDefault("keymap_freemove", "KEY_KEY_K");
+       settings->setDefault("keymap_fastmove", "KEY_KEY_J");
+       settings->setDefault("keymap_frametime_graph", "KEY_F1");
+       settings->setDefault("keymap_screenshot", "KEY_F12");
+       settings->setDefault("keymap_toggle_profiler", "KEY_F2");
+       settings->setDefault("keymap_toggle_force_fog_off", "KEY_F3");
+       settings->setDefault("keymap_toggle_update_camera", "KEY_F4");
        // Some (temporary) keys for debugging
-       g_settings.setDefault("keymap_special1", "KEY_KEY_E");
-       g_settings.setDefault("keymap_print_debug_stacks", "KEY_KEY_P");
+       settings->setDefault("keymap_print_debug_stacks", "KEY_KEY_P");
 
-       g_settings.setDefault("wanted_fps", "30");
-       g_settings.setDefault("fps_max", "60");
-       g_settings.setDefault("viewing_range_nodes_max", "300");
-       g_settings.setDefault("viewing_range_nodes_min", "25");
-       g_settings.setDefault("screenW", "800");
-       g_settings.setDefault("screenH", "600");
-       g_settings.setDefault("address", "");
-       g_settings.setDefault("random_input", "false");
-       g_settings.setDefault("client_delete_unused_sectors_timeout", "1200");
-       g_settings.setDefault("enable_fog", "true");
-       g_settings.setDefault("new_style_water", "false");
-       g_settings.setDefault("new_style_leaves", "true");
-       g_settings.setDefault("smooth_lighting", "true");
-       g_settings.setDefault("frametime_graph", "false");
-       g_settings.setDefault("enable_texture_atlas", "true");
-       g_settings.setDefault("texture_path", "");
-       g_settings.setDefault("video_driver", "opengl");
-       g_settings.setDefault("free_move", "false");
-       g_settings.setDefault("continuous_forward", "false");
-       g_settings.setDefault("fast_move", "false");
-       g_settings.setDefault("invert_mouse", "false");
-       g_settings.setDefault("enable_farmesh", "false");
-       g_settings.setDefault("enable_clouds", "true");
-       g_settings.setDefault("invisible_stone", "false");
-       g_settings.setDefault("screenshot_path", ".");
+       settings->setDefault("wanted_fps", "30");
+       settings->setDefault("fps_max", "60");
+       settings->setDefault("viewing_range_nodes_max", "300");
+       settings->setDefault("viewing_range_nodes_min", "15");
+       settings->setDefault("screenW", "800");
+       settings->setDefault("screenH", "600");
+       settings->setDefault("address", "");
+       settings->setDefault("random_input", "false");
+       settings->setDefault("client_unload_unused_data_timeout", "600");
+       settings->setDefault("enable_fog", "true");
+       settings->setDefault("fov", "72");
+       settings->setDefault("view_bobbing", "true");
+       settings->setDefault("new_style_water", "false");
+       settings->setDefault("new_style_leaves", "false");
+       settings->setDefault("smooth_lighting", "true");
+       settings->setDefault("frametime_graph", "false");
+       settings->setDefault("enable_texture_atlas", "true");
+       settings->setDefault("texture_path", "");
+       settings->setDefault("video_driver", "opengl");
+       settings->setDefault("free_move", "false");
+       settings->setDefault("continuous_forward", "false");
+       settings->setDefault("fast_move", "false");
+       settings->setDefault("invert_mouse", "false");
+       settings->setDefault("enable_farmesh", "false");
+       settings->setDefault("enable_clouds", "true");
+       settings->setDefault("invisible_stone", "false");
+       settings->setDefault("screenshot_path", ".");
+       settings->setDefault("view_bobbing_amount", "1.0");
+       settings->setDefault("enable_3d_clouds", "false");
+       settings->setDefault("opaque_water", "false");
 
        // Server stuff
-       g_settings.setDefault("enable_experimental", "false");
-       g_settings.setDefault("creative_mode", "false");
-       g_settings.setDefault("enable_damage", "false"); //TODO: Set to true when healing is possible
-       g_settings.setDefault("give_initial_stuff", "false");
-       g_settings.setDefault("default_password", "");
-       g_settings.setDefault("default_privs", "build, shout");
-       g_settings.setDefault("profiler_print_interval", "0");
+       // "map-dir" doesn't exist by default.
+       settings->setDefault("motd", "");
+       settings->setDefault("max_users", "20");
+       settings->setDefault("strict_protocol_version_checking", "true");
+       settings->setDefault("creative_mode", "false");
+       settings->setDefault("enable_damage", "true");
+       settings->setDefault("only_peaceful_mobs", "false");
+       settings->setDefault("fixed_map_seed", "");
+       settings->setDefault("give_initial_stuff", "false");
+       settings->setDefault("default_password", "");
+       settings->setDefault("default_privs", "build, shout");
 
-       g_settings.setDefault("objectdata_interval", "0.2");
-       g_settings.setDefault("active_object_range", "2");
-       //g_settings.setDefault("max_simultaneous_block_sends_per_client", "1");
+       settings->setDefault("profiler_print_interval", "0");
+       settings->setDefault("enable_mapgen_debug_info", "false");
+       settings->setDefault("objectdata_interval", "0.2");
+       settings->setDefault("active_object_send_range_blocks", "3");
+       settings->setDefault("active_block_range", "2");
+       //settings->setDefault("max_simultaneous_block_sends_per_client", "1");
        // This causes frametime jitter on client side, or does it?
-       g_settings.setDefault("max_simultaneous_block_sends_per_client", "2");
-       g_settings.setDefault("max_simultaneous_block_sends_server_total", "8");
-       g_settings.setDefault("max_block_send_distance", "8");
-       g_settings.setDefault("max_block_generate_distance", "8");
-       g_settings.setDefault("time_send_interval", "20");
-       g_settings.setDefault("time_speed", "96");
-       g_settings.setDefault("server_unload_unused_sectors_timeout", "60");
-       g_settings.setDefault("server_map_save_interval", "60");
-       g_settings.setDefault("full_block_send_enable_min_time_from_building", "2.0");
-       //g_settings.setDefault("dungeon_rarity", "0.025");
+       settings->setDefault("max_simultaneous_block_sends_per_client", "2");
+       settings->setDefault("max_simultaneous_block_sends_server_total", "8");
+       settings->setDefault("max_block_send_distance", "7");
+       settings->setDefault("max_block_generate_distance", "5");
+       settings->setDefault("time_send_interval", "20");
+       settings->setDefault("time_speed", "96");
+       settings->setDefault("server_unload_unused_data_timeout", "60");
+       settings->setDefault("server_map_save_interval", "10");
+       settings->setDefault("full_block_send_enable_min_time_from_building", "2.0");
+       settings->setDefault("enable_experimental", "false");
 }