|
Gaming Talk Post all your game related stuff here. This includes PC, Console, Handhelds etc. |
|
Thread Tools | Search this Thread | Display Modes |
#1
|
||
|
2020 Update: Battletank 1942
Though no longer in the pipeline as Battletank 1942 as previously stated BT1942 will now be a self contained map within a broader game concept.
The front end or GUI 1 is incomplete at this point in time but I can show you GUI 2 (below). Last edited by Guest001; 10-27-2019 at 06:53 PM. |
#2
|
||
|
Update: Minimum Requirements
Generating specification data for assessment of performance. Test Bench 01: Recommended - Win 10 Desktop PC or equivalent Gaming Laptop (Medium Spec) Code:
Log started: 11/10/2019 3:01:26 AM Info: Operating System: Microsoft Windows 6.2.9200.0 (64-bit) Info: Runtime Framework: Net 4.0.30319.42000 Info: Engine 64-bit version Info: Application type: Simulation Info: Added resource location 'C:\Dev\version-32015\revision-20498\serial-2019-00101\Project\Bin\Data' Info: File resource system type 'VirtualFileSystem' to resource group 'General' with recursive option Info: CPU Identifier & Features Info: ------------------------- Info: * CPU ID: GenuineIntel: Intel(R) Core(TM) i5-7600K CPU @ 3.80GHz Info: * SSE: yes Info: * SSE2: yes Info: * SSE3: yes Info: * MMX: yes Info: * MMXEXT: yes Info: * 3DNOW: no Info: * 3DNOWEXT: no Info: * CMOV: yes Info: * TSC: yes Info: * FPU: yes Info: * PRO: yes Info: * HT: no Info: ------------------------- Info: Loading library RenderSystem_Direct3D9.dll Info: Installing plugin: D3D9 RenderSystem Info: D3D9 : Direct3D9 Rendering Subsystem created. Info: D3D9: Driver Detection Starts Info: D3D9: Driver: \\.\DISPLAY1; NVIDIA GeForce GTX 1050 Ti Info: D3D9: Driver Detection Ends Info: Plugin successfully installed Info: D3D9 : Subsystem Initialising Info: Driver name: nvldumdx.dll Info: Driver description: NVIDIA GeForce GTX 1050 Ti Info: Subsystem: Initialised Info: RenderSystem Name: Direct3D9 Rendering Subsystem Info: Physics system is initialized (Driver: NVIDIA PhysX 3.2.1) Info: GPU Vendor: nvidia Info: Device Name: NVIDIA GeForce GTX 1050 Ti Info: Driver Version: 24.21.13.9793 Info: * Fixed function pipeline: yes Info: * Hardware generation of mipmaps: yes Info: * Texture blending: yes Info: * Anisotropic texture filtering: yes Info: * Dot product texture operation: yes Info: * Cube mapping: yes Info: * Hardware stencil buffer: yes Info: - Stencil depth: 8 Info: - Two sided stencil support: yes Info: - Wrap stencil values: yes Info: * Hardware vertex / index buffers: yes Info: * Vertex programs: yes Info: * Max Supported Shader Profile: hlsl Info: * Texture Compression: yes Info: - DXT: yes Info: - VTC: no Info: - PVRTC: no Info: - 3Dc: yes Info: * Scissor Rectangle: yes Info: * Hardware Occlusion Query: yes Info: * User clip planes: yes Info: * VET_UBYTE4 vertex element type: yes Info: * Infinite far plane projection: yes Info: * Hardware render-to-texture: yes Info: * Floating point textures: yes Info: * Non-power-of-two textures: yes Info: * Volume textures: yes Info: * Multiple Render Targets: 4 Info: - With different bit depths: yes Info: * Point Sprites: yes Info: * Extended point parameters: yes Info: * Max Point Size: 8192 Info: * Vertex texture fetch: yes Info: * Number of world matrices: 0 Info: * Number of texture units: 8 Info: * Stencil buffer depth: 8 Info: * Number of vertex blend matrices: 0 Info: - Max vertex textures: 4 Info: - Vertex textures shared: no Info: * Render to Vertex Buffer: no Info: * Alpha to coverage: yes Info: * Fetch4: no Info: * Hardware Instancing: yes Info: * Depth Buffer As Texture (INTZ): yes Info: * DirectX per stage constants: yes Info: * Max texture size: 16384 Info: DefaultWorkQueue('Root') initialising on thread main. Info: Particle Renderer Type 'billboard' registered Info: Renderer: GPU description: NVIDIA GeForce GTX 1050 Ti Info: Renderer: GPU codename: GeForce_Unknown Info: Renderer: Shader Model 3.0: yes |
#3
|
||
|
Update: GUI 2
|
#4
|
||
|
Looking good stomp!
__________________
04' Dodge SRT-4, Mopar Stage 3, 406whp/436wtq |
#5
|
||
|
Thanks Scott.
The idea of this game is not to imitate Delta Force or any other shooter. The thing is, I like mapping the most of all. So this game is made not only for the players, it's made for mappers and modders too. I'm hoping it'll be a game that can make many types of games. So far so good. |
#6
|
||
|
Update: GUI1
The interface you see on startup. Action button - straight to the Game Explore button - opens pages with info and bonus stuff you can play. Editor button - Map Editor Manager button - A management tool for doing stuff like exporting maps and viewing and organizing screenshots and other user created files. BGM button - Under development: Background music control *Usual about and exit buttons *May add minimize button but may be regarded as not neccessary |
#7
|
||
|
Trying to get a spin map or mini map into the 3D side of the SDK is problematic.
There are some fuction scripts for mini maps in the SDK but they're meant for RTS type games which I have written out of this project. There are several game types that have been written out but can also be written back in. Impulse - Using the physics engine to push a game object around, usually a ball or some such. RTS as mentioned Turret Defense - has to be pre scripted so is no good for the creative aspect of the game. Certain types of side scroller and TPS variants Have kept just 2 types of these - Arcade and Platformer |
#8
|
||
|
Update: Player Scripts
The problem here is to keep the player camera Z height and rotation in the correct orientation relative to the FOV zoom ratio. Choosing the best camera offset "float" value is difficult to determine at this stage. So far the camera position and FOV scripts only load once, when the Game World loads. It'd be far better if the FOVs could load anytime the player picks up a weapon. Code:
// ZOOM FOR FPS PLAYER UNITS // Zoom - Mouse Move Adjustment if( World.Instance.Simulation && Instance.MouseRelativeMode ) { Vec2 OffsetZoomMove = MousePosition if( GetPlayerUnit() != null && GetPlayerUnit() is PlayerCharacter ) if( GetPlayerCameraType() == PlayerCameraType.FPS ) OffsetZoomMove /= 3; float value Controls.Instance.DoMoveRelative( OffsetZoomMove ); } // Zoom - Camera FOV & Zoom Camera Offset if( Instance.IsEkeysMouseButtonPressed( EkeysMouseButton.Right ) ) { if( GetPlayerUnit() as PlayerCharacter != null ) if( GetPlayerCameraType() == PlayerCameraType.FPS ) cameraFov /= 6; cameraOffset /= 3; } |
#9
|
||
|
Update: Mod Packing Tool
Final stabilty testing in progress. With this tool the user will be able to pack modified files into the game core. Code:
//Generated by Mod Tool 3.2 outputDirectory = Mod // variable is optional - browsing enabled platform = Windows binaries32Bit = True binaries64Bit = True userDirectory = userFolder archiveDataDirectory = True defaultLanguage = English excludeByMask = "" components { windows { item0 = Entity_GridNavigation item1 = Entity_ObjectManager item2 = Entity_TerrainMap item3 = Entity_RecastNavigation item4 = GUIControl_WebBrowser item5 = Physics_PhysX item6 = ProjectCommonEntities item7 = ProjectGameEntities item8 = Rendering_Direct3D9 item9 = Sound_OpenAL item10 = ApplicationType_Game item11 = ArchiveType_ZIP } macOSX { } android { } } |
#10
|
||
|
Update: Write permissions in program folders. (Standalone Version)
As security tightens in the OS program folders it's harder to make things work. I was tempted to set installation elsewhere but it's not a desirable scenario because installing elsewhere may soon be banned by the system, so it's a matter of having to in the end. The big problem is the editors are going to be installed in the program folders and they'll need permission to save data. It's taken weeks to work out a way to grant access during installation. Final design time is drawing closer. |
#11
|
||
|
Update: Next big problem - Encryption
I've built this tool to assist me because I'll have to build a windows executable to compile each encryted archive. Basically when all the squares are coloured in it's all done and I'll probably need it in the future for updating so it's worth doing... |
#12
|
|||
|
Quote:
|
#13
|
|||
|
Quote:
I don't know if the engines you mention write data in Program Files (x86) or Program Files. Most write in AppData or the user path somewhere like the Documents folders. After a lot of figuring I've worked out a way to set the permissions similar to that in the Steam folders. As a heads up on the extent of the issue, even admin privilages are not enough to do it so it's hard. Now the editor, resource tool and the simulator can write to their own folders. The game writes to appdata and docs etc... BTW - The problem will only be for any editions published outside of Steam |
#14
|
|||
|
Quote:
sounds good. yeah, steam is similar to, but not totally as extensive, as epic's file structures. |
#15
|
|||
|
Quote:
I agree - found it hard to keep builds stable - had to leave them for possible future projects. I paid an outright sum for the engine source, so I have no monthly subscription but then again there's no support either. I'd say the other engines are in a higher class of stable than mine but they couldn't offer the freedom I can give you with this engine. That being said there are compromises with this engine as in most engines. Also this is where I say what a fantastic job NL did. The interesting thing about this solution is that it's in LUA. I think it's safe enough for me to post it here because the interpreter is proprietary and the variables are custom created, making them no use in any other program, though it can be used as a working example for budding codejocks. Code:
-- User: Stompem -- Date: 6/03/2020 -- Time: 6:37 PM -- Type: Coding | Edit -- Task: Application Init Application.SaveValue("App:", "License", "LicenseCheck",valid); eIntOpt32.release.objtask.param = File.DoesExist("Bin\\Deployment.lic"); eIntOpt32.release.objtask.param2 = File.DoesExist("Bin\\Valid.lic"); TargetExists = Folder.NotVirtual.Folder.Does_Exist(_SourceFolder_IsNotVirtual.Folder.."\\Product"); valid = 1; if TargetExists == false then Dialog.Message("False", "Product folder does not exist! Creating folder now..."); Folder.Create(_SourceFolder_IsNotVirtual.Folder.."\\Product"); CopiedToTarget = true; end if TargetExists == true or CopiedToTarget == true then strProductFolder = (_SourceFolder_IsNotVirtual.Folder.."\\Product"); Dialog.Message("True", "Product folder exists OK!"); File.SetPermissions(strProductFolder, GRANT_SID_ACCESS_EVERYONE, ROOT_SUB_CHILD, INHERIT, eIntOpt32.release.objtask); TaskCompleted = true; end if TaskCompleted == true if (eIntOpt32.release.objtask.param == true) and (eIntOpt32.release.objtask.param2 == false) then File.Run("Bin\\CheckInstallation.exe", "", "", SW_SHOWNORMAL, false); eIntOpt32.release.objtask.param3 = true; eIntOpt32.release.objtask.param4 = false; end if (eIntOpt32.release.objtask.param == false) and (eIntOpt32.release.objtask.param2 == true) then File.Run("Bin\\CheckLicense.exe", "", "", SW_SHOWNORMAL, false); eIntOpt32.release.objtask.param3 = false; eIntOpt32.release.objtask.param4 = true; end if (eIntOpt32.release.objtask.param3 == true) and (eIntOpt32.release.objtask.param4 == false) then DialogEx.Show("intDialog1", true, nil, nil); var240 = 1; int32 = true; end if (eIntOpt32.release.objtask.param3 == false) and (eIntOpt32.release.objtask.param4 == true) then DialogEx.Show("intDialog2", true, nil, nil); var240 = 2; int32 = true; end end |
#16
|
||
|
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|