GAME_TIME_MODIFIER# = 1.0 CREATE_SOUND_TYPE_TABLE(1000,20) GOSUB SETUPBAGSOUND CREATE_TEXTURE_TYPE_TABLE(10000,32) SETUP_TERRAIN_SYSTEM(1089800,4,0,256,16,256) CREATE_MUSIC_TABLE(8) CREATE_TAG_TABLE(500000,500) CREATE_COUNTER_TABLE(500500,50) CREATE_HUD_TABLE(100,10) CREATE_HUD_ADDON_TABLE(10) CREATE_IMAGE_ANIMATIONS_TABLE(1000,64) CREATE_PARTICLE_BASIC_SYSTEM_TABLE(4500,10,64) SET_OBJECT_MEMORY_SIZE(800000,25) SET_OBJECT_SYSTEM_SIZE(10000,350,10) CREATE_DYNAMIC_OBJECT_TYPE("Client",800,-1) CAMERA_SET_PARAMETERS(180,20,50) SETUP_FADE_SCREEN(99999) SET_SCREEN_NORMAL() CREATE_VIDEO_ANIMATION_TABLE(2) `CREATE_VIDEO_ANIMATION("INTRO","ONEKA_INTRO.WMV",1) `ADD_TO_VIDEO_QUEUE("INTRO") PLAY_VIDEO_QUEUE() LOAD_FROM_QUEUE(0) DO PRE_ENGINE() IF KEY_FUNCTION_LOCK_CHECK("ESC KEY") = 1 SKIP_VIDEO() ENDIF TEMP_STATUS = VIDEO_SYSTEM() IF TEMP_STATUS = 4 DELETE_ALL_VIDEO_ANIMATION() EXIT ENDIF POST_ENGINE() SYNC LOOP COLOR BACKDROP RGB(255,255,255) GLOBAL LOGIN_BUTTON AS INTEGER GLOBAL REGISTER_BUTTON AS INTEGER GLOBAL LOGIN_STATUS$ AS STRING GLOBAL LOGIN_MODE AS INTEGER GLOBAL LOGIN_VERIFIED AS BOOLEAN GLOBAL TEAAMP_X AS INTEGER GLOBAL TEAAMP_Y AS INTEGER CREATE_HUD_TABLE(1000,40) CREATE_HUD_ADDON_TABLE(20) MAKE_USER_INPUT_BOX_TABLE(5) TEMP_CREATE_LOGIN_SCREEN() TEMP = FIND_HUD("LOGINBOX") TEMP_X = HUD(TEMP).X TEMP_Y = HUD(TEMP).Y SYS_AUTHORIZATION_CODE$ = GENERATE_SYSTEM_AUTHORIZATION_CODE(6) GLOBAL IP_ADDRESS$ AS STRING GLOBAL PACKET_SEPERATOR AS INTEGER IP_ADDRESS$ = IP_ADDRESS() ENABLE_NETWORK(1,0,0) NETWORK_CONNECT("MAIN","68.96.2.147",6000,1) STORE_NETWORK_DATA("Client Data",9,1) CREATE_NETWORK_SEPERATOR_TABLE(2) CREATE_NETWORK_PACKET_TABLE(2) PACKET_SEPERATOR = CREATE_NETWORK_SEPERATOR(CHR$(1)) CREATE_NETWORK_PACKET("OUT PACKET") `CREATE_NETWORK_SEPERATOR_TABLE(1) `CREATE_NETWORK_PACKET_TABLE(1) NETWORK_SEND_PACKET("AC:01"+CHR$(1)+SYS_AUTHORIZATION_CODE$+CHR$(1)+IP_ADDRESS$,NETWORK_GET_CHANNEL("MAIN")) GLOBAL LOGIN_SCREEN_MODE$ AS STRING GLOBAL TEMP_LOGIN_SCREEN_LOCK AS BOOLEAN GLOBAL TEMP_CHARACTER_LOGIN_SCREEN_MAKE AS BOOLEAN GLOBAL TEMP_CHARACTER_CREATE_SCREEN_MAKE AS BOOLEAN LOGIN_SCREEN_MODE$ = "ACCOUNT" DIM CHARACTER_SCREEN_LIST(3) AS CHARACTER_SCREEN_LIST DO PRE_ENGINE() `DE_TEXT("MOUSE POSITION X: "+STR$(MOUSE_POSITION_X)+" Y: "+STR$(MOUSE_POSITION_Y),0,0,0,0,0,255) IF LOGIN_SCREEN_MODE$ = "ACCOUNT" IF LOGIN_MODE = 2 OR 3 DE_TEXT(GET_USER_INPUT_BOX_DATA("ACCOUNT",1),TEMP_X+24,TEMP_Y+85,0,0,0,255) ENDIF IF LOGIN_MODE = 1 OR 3 DE_TEXT(GET_USER_INPUT_BOX_DATA("PASSWORD",1),TEMP_X+24,TEMP_Y+153,0,0,0,255) ENDIF LOGIN_SCREEN_HANDLER() SET_DE_TEXT(1) DE_TEXT(LOGIN_STATUS$,TEAAMP_X,TEAAMP_Y,0,0,0,255) ENDIF IF LOGIN_SCREEN_MODE$ = "CHARACTER LOGIN" CHARACTER_SELECT_HANDLER() ENDIF IF LOGIN_SCREEN_MODE$ = "CHARACTER CREATION" IF LOGIN_MODE = 2 OR 3 DE_TEXT(GET_USER_INPUT_BOX_DATA("FIRST NAME",1),TEMP_X+24,TEMP_Y+85,0,0,0,255) ENDIF IF LOGIN_MODE = 1 OR 3 DE_TEXT(GET_USER_INPUT_BOX_DATA("LAST NAME",1),TEMP_X+24,TEMP_Y+153,0,0,0,255) ENDIF SET_DE_TEXT(1) DE_TEXT(LOGIN_STATUS$,0,0,0,0,0,255) CHARACTER_CREATE_HANDLER() ENDIF IF LOGIN_SCREEN_MODE$ = "END" EXIT ENDIF POST_ENGINE() SYNC LOOP SET_SCREEN_BLACK(1) SET_DE_TEXT(1) COLOR BACKDROP RGB(0,0,0) GLOBAL PING_DELAY AS INTEGER A = TERRAIN_SYSTEM_CREATE_TERRAIN("Media/001.DEM","HIGH",AMOUNT*X,0,AMOUNT*Y) TEX = CREATE_TEXTURE_TYPE("TEXTURES","ROCK_001.BMP","DETAIL/"+"ROCK_001.BMP") Terrian_Number = TERRAIN_SYSTEM_TERRAIN_DATA(A).OBJECT_NUMBER SIZESS = 1000000 DIVVDER = 10 CAMERA_SIGHT = SIZESS/DIVVDER SET CAMERA RANGE 1,CAMERA_SIGHT SETUP_SKY_SYSTEM(10011010) SET_ATMOSPHERE_HEIGHT(5000,2000) MAKE_SKY(SIZESS/DIVVDER,"Gradient.png") MAKE_SKY_STARS(SIZESS/DIVVDER,"Stars.png",400/DIVVDER) CLOUD1 = CREATE_TEXTURE_TYPE("CLOUDS","CLOUD_001.PNG","CLOUDS/"+"CLOUD_001.PNG") CLOUD2 = CREATE_TEXTURE_TYPE("CLOUDS","CLOUD_002.PNG","CLOUDS/"+"CLOUD_002.PNG") CLOUD3 = CREATE_TEXTURE_TYPE("CLOUDS","CLOUD_003.PNG","CLOUDS/"+"CLOUD_003.PNG") MAKE_SKY_CLOUDS(SIZESS/12,CLOUD1,10/DIVVDER,CLOUD2,20/DIVVDER,CLOUD3,30/DIVVDER) SET_SKY_CLOUD_THICKNESS(255,255,255) SET_SKY_CLOUDS(0.00090) SET OBJECT EMISSIVE WRLD_SYS_SKY_OBJECT,RGB(0,0,255) SET OBJECT EMISSIVE WRLD_SYS_STARS_OBJECT,RGB(255,255,255) CREATE_MUSIC("WORLD","MUSIC/WORLD.MP3",100,2.5,2.5) CREATE_MUSIC("BATTLE 1","MUSIC/BATTLE_MUSIC_01.MP3",100,2.5,2.5) CREATE_MUSIC("BATTLE 2","MUSIC/BATTLE_MUSIC_02.MP3",100,2.5,2.5) CREATE_MUSIC("BATTLE 3","MUSIC/BATTLE_MUSIC_03.MP3",100,2.5,2.5) CREATE_MUSIC("BATTLE 4","MUSIC/BATTLE_MUSIC_04.MP3",100,2.5,2.5) ADD_OBJECT_TO_MEMORY("Media/Test.x","Male Model","Client",1) LOAD_HUD_FILE(SYS_HUD_LOCATION$) HIDE_ALL_HUDS() TEMP_LOADING_SIZE = LOADING_QUEUE_SIZE DO PRE_ENGINE() SET_SCREEN_BLACK(1) TEMP_CURRENT_LOADED = GET_LOADING_QUEUE_SIZE(0) TEMP_PERCENT_LOADED = (((TEMP_CURRENT_LOADED+0.0) / (TEMP_LOADING_SIZE+0.0)) * 100) D3D_STARTTEXT D3D_COLOR 255,255,255,255 D3D_TEXT DE_CONSOLE_TEXT_NUM,0,0,0,"Percent loaded: "+STR$(TEMP_PERCENT_LOADED)+"%" D3D_TEXT DE_CONSOLE_TEXT_NUM,0,15,0,"Loaded "+STR$(TEMP_CURRENT_LOADED)+" of "+STR$(TEMP_LOADING_SIZE)+" files." D3D_ENDTEXT IF LOADING_COMPLETE = 1 EXIT ENDIF LOAD_FROM_QUEUE(1) POST_ENGINE() SYNC LOOP SHOW_ALL_HUDS() MAIN_OBJ = MAKE_DYNAMIC_OBJECT(CLIENT.FIRST_NAME$+" "+CLIENT.LAST_NAME$,"Client","Male Model","Client") POSITION_DYNAMIC_OBJECT_NUMBER(MAIN_OBJ,CLIENT.X#,GET TERRAIN GROUND HEIGHT(Terrian_Number,CLIENT.X#,CLIENT.Z#),CLIENT.Z#) SET_Y_ROTATE_DYNAMIC_OBJECT(MAIN_OBJ,CLIENT.ANGLE_Y#) CAMERA_FOLLOW_OBJECT(GET_DYNAMIC_OBJECT_NUMBER(MAIN_OBJ),1) CREATE_TAG(GET_DYNAMIC_OBJECT_NUMBER(MAIN_OBJ),CLIENT.FIRST_NAME$+" "+CLIENT.LAST_NAME$,RGB(255,255,255),"",0,5) CLIENT.OBJECT_NUMBER = MAIN_OBJ MAKE_TEXT_SYSTEM(1,100) CREATE_TEXT_SYSTEM_TYPE("MAIN",3,9*SYS_HUD_RESOLUTION_MODIFIER_Y#,840*SYS_HUD_RESOLUTION_MODIFIER_X#,5) GLOBAL ASSEMBLED_OUT_PACKET$ AS STRING NETWORK_SEND_PACKET("AC:IG",NETWORK_GET_CHANNEL("MAIN")) PRE_GAME_LOOP_FIX() DO IF DE_CONSOLE_SHOWENGINE_DELAY = 1 TIME1 = TIMER() ENDIF PRE_ENGINE() IF DE_CONSOLE_SHOWENGINE_DELAY = 1 TIME2 = TIMER() PRE_ENGINE_WAIT = TIME2 - TIME1 ENDIF IF DE_CONSOLE_ACTIVE = 0 T = 0 TIN = 15 DE_TEXT("Daikanu Online Client testing",0,0,255,255,255,255) T = T+TIN DE_TEXT("Ping: "+STR$(PING_DELAY)+" Packets in: "+STR$(SYS_NETWORK_DATA_PACKETS_IN)+" out: "+STR$(SYS_NETWORK_DATA_PACKETS_OUT),0,T,255,255,255,255) T = T+TIN DE_TEXT("Position X#:"+STR$(GET_X_POSITION_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER))+" Z#:"+STR$(GET_Z_POSITION_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER)),0,T,255,255,255,255) T = T+TIN IF DE_CONSOLE_SHOWFPS = 1 DE_TEXT("Frames per second: "+str$(FRAME_RATE),0,T,255,255,255,255) T = T+TIN ENDIF IF DE_CONSOLE_SHOWPOLY = 1 DE_TEXT("Polygons on screen: "+str$(POLYGONS_ON_SCREEN),0,T,255,255,255,255) T = T+TIN ENDIF IF DE_CONSOLE_SHOWENGINE_DELAY = 1 DE_TEXT("Pre engine time delay: "+STR$(PRE_ENGINE_WAIT),0,T,255,255,255,255) T = T+TIN DE_TEXT("Post engine time delay: "+STR$(POST_ENGINE_WAIT),0,T,255,255,255,255) T = T+TIN ENDIF IF DE_CONSOLE_SHOWCAM_POSITION = 1 DE_TEXT("Camera position X: "+STR$(CAMERA POSITION X())+" Y: "+STR$(CAMERA POSITION Y())+" Z: "+STR$(CAMERA POSITION Z()),0,T,255,255,255,255) T = T+TIN ENDIF ENDIF IF SYSTEM_TIME >= PING_WAIT CLIENT.PACKET_PING = 1 PING_WAIT = SYSTEM_TIME + 10000 ENDIF TEMP = FIND_HUD("Chat Box") SET_TEXT_TYPE_POSITION("MAIN",HUD_POSITION_X(TEMP)+8,(HUD_POSITION_Y(TEMP)+HUD_SCALE_Y(TEMP))-6) SET_TEXT_TYPE_ALPHA("MAIN",GET_HUD_CURRENT_FADE(TEMP)) CLIENT.X# = GET_X_POSITION_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER) CLIENT.Z# = GET_Z_POSITION_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER) CLIENT.ANGLE_Y# = GET_Y_ANGLE_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER) CLIENT_MOVEMENT() IF CUR_SCANCODE <> 0 IF DE_CONSOLE_OVERRIDE = 0 HANDLE_MISC_CONTROLS() ENDIF IF KEY_FUNCTION_LOCK_CHECK("CONSOLE") DE_CONSOLE_CALL = 1 ENDIF ENDIF ASSEMBLE_OUT_PACKET() IF GET_NETWORK_PACKET("OUT PACKET") <> "" NETWORK_SEND_PACKET(GET_NETWORK_PACKET("OUT PACKET"),NETWORK_GET_CHANNEL("MAIN")) ENDIF UPDATE TERRAIN IF DE_CONSOLE_SHOWENGINE_DELAY = 1 TIME1 = TIMER() ENDIF POST_ENGINE() IF DE_CONSOLE_SHOWENGINE_DELAY = 1 TIME2 = TIMER() POST_ENGINE_WAIT = TIME2 - TIME1 ENDIF SYNC LOOP END