/////////////////////////////////////////////////////////////////////////////// // // ## ###### // ###### ### // ## ############### Shark 3D Engine (www.shark3d.com) // ########## # # # // ######## Copyright (c) 1996-2006 Spinor GmbH. // ######### # # # All rights reserved. // ## ########## // ## // /////////////////////////////////////////////////////////////////////////////// // This file describes the server. // The server has an own namespace: actor_ident "kit_base.capsule" actor_param { active 1 scope "server" local_name "capsule" deleg_target "dispatch_export" child_ident "kit_base.group" child_param { active 1 child_array { // Dispatcher handling messages from outside the server. ident "kit_base.dispatch" param { name "dispatch_export" entry_array { // Create local player (not via networking): cmds "produce_player" targets "universe" } } } { ident "kit_base.dispatch" param { name "dispatch" entry_array } } { // Dispatcher handling messages from the universe. ident "kit_base.dispatch" param { name "dispatch_universe" entry_array { cmds "get_basesuppl" targets "sersuppl" newcmd "get_obj" } { cmds "ignore_frmtime" targets "^root" } { cmds "cfg_access_int_info" targets "^cfg" newcmd "access_int_info" } { cmds "cfg_access_float_info" targets "^cfg" newcmd "access_float_info" } { cmds "cfg_access_str_info" targets "^cfg" newcmd "access_str_info" } { cmds "cfg_access_chunk_info" targets "^cfg" newcmd "access_chunk_info" } { cmds "universe_cfg_access_int_info" targets "universe_cfg" newcmd "access_int_info" } { cmds "universe_cfg_access_float_info" targets "universe_cfg" newcmd "access_float_info" } { cmds "universe_cfg_access_str_info" targets "universe_cfg" newcmd "access_str_info" } { cmds "universe_cfg_access_chunk_info" targets "universe_cfg" newcmd "access_chunk_info" } } } { ident "kit_perch.mgr" param { name "perchmgr" } } { ident "kit_snk.data" param { name "universe_cfg" val { server 1 } } } { ident "kit_base.sersuppl" param { name "sersuppl" child "^basesuppl" } } { ident "kit_base.onaction" param { active 1 target "link_set" cmd "poll_recv" } } { // Event queue ident "kit_base.evtmgr" param { active 1 name "evtmgr" extcfg_actor "^cfg" extcfg_entry_log "log.evtmgr" } } { // Include the universe definition: ident "kit_engbase.extern" param { active 1 name "universe_extern" deleg_name "universe" allow_no_target 1 res "universe/actor/universe.s3d_actor_run" net_imprint 1 } } { // External file describing the structure of each link: ident "kit_base.extern" param { // Delegate action calls to the child: active 1 res "server/actor/serverlink.s3d_actor_run" } } { // Create a network engine. ident "kit_io.neteng" param { active 1 name "neteng" // Get parameters from the actor "cfg", // which is defined above. extcfg_actor "^cfg" // Get the parameters from the "network" entry. extcfg_entry_param "network" given_array { item "^env" given_ident "env" } } } { // Actor waiting for connections from clients: ident "kit_engbase.pluglisten" param { name "pluglisten" neteng "neteng" link_producer "link_producer" extcfg_actor "^cfg" extcfg_entry_addr "server.addr" } } { ident "kit_base.onaction" param { active 1 target "pluglisten" cmd "check" } } { ident "kit_base.onaction" param { active 1 target "link_set" cmd "poll_send" } } } }