Jump to content

aiaf

Members
  • Posts

    720
  • Joined

  • Last visited

Posts posted by aiaf

  1. Im thinking to release a demo out of what we have here,

    will include 4 complete levels (the robot computer room , the vr room, dream level 1 and 2.

    The cryo room will be included separately , i tried to link it to other levels but everytime i save the map it crashes the editor ...

     

    Hope you guys ok with this.

    In case somebody finds time to do some further work will be no problem.

  2. A sf rts game im working on and off :) since i started with Leadwerks.

    Making a post to show my progress.

     

    Working on populating the world:

    Structura.thumb.png.168fd6ab88e97f70f60c054164a8fe84.png

    What happens when going full retard and not caring about release date :)

    The below is an example of my macro system, the game has at he moment about 140 commands that all can be executed from the ingame terminal.

    This macro creates the screenshot below:

    left socket attach
    left tunnel 3 attach
    left mine attach

    right socket attach
    right tunnel 3 attach
    right power_plant attach

    front socket attach
    front tunnel 3 attach
    front mine attach

    back socket attach
    back tunnel 5 attach
    back logistic_center attach

    sockets_storage_fill
    sockets_storage_fill
    sockets_storage_fill
    sockets_storage_fill
    sockets_storage_fill
    sockets_storage_fill
    sockets_storage_fill
    sockets_storage_fill
    sockets_storage_fill
    sockets_storage_fill

    right powerplant_online
    left mine_online
    front mine_online

    sentinel_undock

    struct.thumb.png.039b3de13d68ad49f8b806c02b83e8b7.png

    At the moment just cleaning up and polishing current functionality.

    Soon more screenshots, movie if i have time to do.

    • Like 4
  3. I only added the levels described above.You will need to add to git anything else (cutscenes,temple etc).

    Below a diagram on how the levels are linked at the moment.To enter vr level you click on the robot in the computer room.Level 4 and 5 when finished will load back Level3.

    So far is making sense to me, we can change anytime as needed, tell me what you think.

     

    Also im thinking to add an island map (there was one that looked good) and link that also to the level3.I think would be nice story wise if the VR level could load dream levels and also real levels (be like a teleporter).

     

    Cryo room + temple, ship exit is not linked yet

    Is a draw.io diagram , i can share if necessary.

    Forth.png.959e21f723910f8d88d7595084cb5964.png

  4. I created a new git repo , moved there only the ok levels + resources, and shuffled a bit the order.

    Level1 - Cryo room

    Level2 - Ai computer room

    Level3 - VR level with the monolith

    Level4 - The arcade dream level1

    Level5 - The dream level2

    Now the level 3 is a level hub , you enter certain commands and you can move to level 4,5 or come back anytime to the level3.

     

    But i have some big problems ...

    I had another try to add some gameplay to  cryo room , but it crashes the editor every time i hit save.Im really annoyed by this dont know what to do.... i like the cryo level.

    For now i abandon this and start the game from the level 2.Also i cannot attach some scripts... and the crashing of editor starting to piss me off.

     

    My idea was to release a demo , we got some nice stuff here  , but if you guys coming back is great.

     

    I added you the to new git:

    https://bitbucket.org/alexandru_afrasinei/forth-first-blood/

  5. Mdgunn i know you are a bit busy with other things,

    can you commit the new ship maps ? i will try to help advance with it.

    I remember was lot of work there and i will have some more time in the next period for forth.

    Tell me if its ok for you , if you want to continue work on that for some time i will pick something  else.

     

    Also we should consider creating the new cleaned up repository for the game.

    Slas also has some ideas about some new dream levels.

     

  6. 2111 means: option index 2 depth 1 parent 11

    323111 means: option index 3 depth 2 parent 3111

    This way the key is unique and i have a variable depth so i can access things in the above table.

     

    At begin we are at ["11"] i just draw the corresponding choices table:

    "Print command", "Print command input", "Select operation", "Input command data", "Clear command", "Execute command"

    Player click Select operation (that is index "3111"), draw the choices if they exits and execute the corresponding func.

    dialogManager.goto("3111")

    Its generic, works for any depth, single inconvenient is the key can get pretty long for higher depth.

    I could hide that from the user, by using a file with tab as depth specifier that after it generates the file as above.

     

    Ill send you the code when i come back to my computer.

     

     

  7. Load your dialogs from lua files(a table) and have them rendered.You need something generic for all kinds of dialogs and depths.

     

    We have something like this in the forth project using leadwerks gui.

    The choices table tells the next sub dialogs, and each dialog line has a function handler that gets called when option was selected.

     

    TerminalDialog = {
        ["11"] = { speaker = "Monolith", text = "Terminal active. Awaiting commands: ", navButtonType = "End Dialog", choices = {"Print command", "Print command input", "Select operation", "Input command data", "Clear command", "Execute command"}, func = UpdateTerminalDialogData},
            ["1111"] = { speaker = "Monolith", text = "Monolith command:\n\n N " .. mNorthInput .. "\n S " .. mSouthInput .. "\n E " .. mEastInput .. "\n W " .. mWestInput .. "\n U " .. mUpInput .. "\n D " .. mDownInput, navButtonType = "End Dialog", choices = {}, func = nil},
            ["2111"] = { speaker = "Monolith", text = "Current databanks content:\n\n N " .. northInput .. "\n S " .. southInput .. "\n E " .. eastInput .. "\n W " .. westInput .. "\n U " .. upInput .. "\n D " .. downInput, navButtonType = "End Dialog", choices = {}, func = nil},
            ["3111"] = { speaker = "Monolith", text = "Pick type of operation performed when pushing data:", navButtonType = "End Dialog", choices = {"Concatenation", "Addition", "Substraction", "Multiplication"}, func = nil},
                ["123111"] = { speaker = "Monolith", text = "Concatenation active", navButtonType = "End Dialog", choices = {}, func = function() selectedOperation = 0 end},
                ["223111"] = { speaker = "Monolith", text = "Addition active", navButtonType = "End Dialog", choices = {}, func = function() selectedOperation = 1 end},
                ["323111"] = { speaker = "Monolith", text = "Substraction active", navButtonType = "End Dialog", choices = {}, func = function() selectedOperation = 2 end},
                ["423111"] = { speaker = "Monolith", text = "Multiplication active", navButtonType = "End Dialog", choices = {}, func = function() selectedOperation = 3 end},
            ["4111"] = { speaker = "Monolith", text = "All data pushed", navButtonType = "End Dialog", choices = {}, func = PushTerminalData},
            ["5111"] = { speaker = "Monolith", text = "Databanks cleared", navButtonType = "End Dialog", choices = {}, func = ClearTerminalDatabanks},
            ["6111"] = { speaker = "Monolith", text = "Execute command", navButtonType = "End Dialog", choices = {}, func = ExecuteCommand}
    }

     

    Its 2 lua classes Dialog and DialogManager.I can send you the files if you want to have a look.

    Just trying to give you some ideas.

    • Like 1
  8. Here is a movie with the latest switch i made, there are 3 pyramids that can be selected like this.

    The player could open the way to enter the selected pyramid.

     

    Im not entirely sure i will do the 3 interior room of the pyramids, i dont know what to put in them at the moment.Maybe is better i stop.

    I have some problems with the buttons not playing the whole sound, i dont know what happens there.

     

  9. Occlusion culling means that geometry not inside the view of the camera, will not be drawn, for performance reasons.

    Is good to think of this when designing your level.

    But your scene seem simple don't know what the problem could be.

    I had at some point 800 instanced cubes in a scene, leadwerks has no problem with that.

     

     

    • Like 1
  10. LEVEL: [level01a] Dream level 2

    PURPOSE: let the player discover 3 VR commands, by telling a story and some quests

    MAIN GAMEPLAY: exploration, arcade, quests, too long to explain here

    RESULTS:

    - discover all 3 VR commands

    - partially discover cmds

    - exit the level

     

    In future choices here could affect more the "real" game world.The ship AI is already involved in the story.

    The 3 commands to discover are still to be determined.Initially i wanted to have the activate health station in here, but it doesn't fit anymore.And i think this should be introduced after cube/sphere attack because the level is long and don't want to interrupt too much the attack in the ship.Probably after repair of AI room?  You get an electric shock and you go to dream level 2? 

    Also in this level you will get your magic powers.

    Can you add this to the document, at the moment i don't know where it fits but it's purpose should be clear.

  11. This is good is very detailed.

     

    I want to explain better the first VR interaction for further reference:

    ACTIONS:

    subsection 1

    .Player is introduced to VR press the monolith in center of room..Player is free to figure it out and do anything.

    Trigger that ends this is when he pressed "Input command data" and talk back to the monolith in center room,

     

    subsection 2

    Monolith gives the first real command: N1 S1 W0 E0 U0 D0

    Skiping here the monolith words are very long.

    PURPOSE: activate the VR computer

    EFFECT: monolith in center of room gets activated (a humming sound/some red graphic effect)

     

    subsection 3

    Monolith is online but the self test failed.

    "Monolith online. Self test failed.
    This could be solved by a restart command: \n\n N 1 S 1 E 1 W 1 U 1 D 1"

    PURPOSE: self test failed, restart the VR computer to pass self test

    EFFECT: some sound that represent the restart, change color on the active effect of the monolith to green, to signify self test passed

     

    subsection 4

    Monolith is ok he teaches you how to exit vr and tell you to come back at any time
     

    All internal subsystems are go. This is the VR room
    
    You can control the ship subsystems from here
    
    In cryo room there is a red book describing usual commands
    
    The command to exit VR:\n N 0 S 0 E 0 W 0 U 2 D 0\n Come back at any time.

    PURPOSE: exit VR, teach the player about the VR manual

    EFFECT: some sound when exit VR

     

    This end the first VR interaction

    Most of the above is implemented here is what is missing:

    1. active effect on the monolith when self test failed (redish effect + humming noise and some crackling)
    2. active effect on the monolith when all test passed (green effect + humming noise smooth)
    3. exit vr sound
    4. specific sound when executing a command from the terminal

     

    Quote

    SECTION 4 - Unlock Cryo Room Door 

    LEVEL: [level03] VR Level 1
    PURPOSE: Introduces VR type levels.
    MAIN GOAL: Player should locate cryo room door unlock controls in VR.
    FAILURES RESULTS: 

    • Falling: Player resets to start position if fall out of level (it has gaps initially).
    • Puzzle Failure: Player does not complete puzzle correctly and must restart.
    • Health Runs Out: Player passes out and returns to cryo room to re-heal and re-enter VR.
      SUCCESS RESULTS: Player performs VR puzzle that unlocks the cryo room door. 

     

    I would like to keep the first interaction simple as it is now, its enough info there and a few VR commands.

    Change failure results to this:

    SECTION 4 - Unlock Cryo Room Door 

    LEVEL: [level03] VR Level 1
    PURPOSE: Introduces VR type levels.
    MAIN GOAL: Player should locate cryo room door unlock controls in VR.
    FAILURES RESULTS: 

    • Falling: Player resets to start position if fall out of level (it has gaps initially).
    • Health Runs Out: Player passes out and exit VR level forcibly returns to cryo room
      SUCCESS RESULTS: Player exit VR by using the exit command

     

    Second interaction with VR:

    LEVEL: [level03] VR Level 1
    PURPOSE: activate some cryo room systems by VR
    MAIN GOAL:

    Player performs VR puzzle that activates the health station in cryo room

    Player performs VR puzzle that unlocks the cryo room door


    FAILURES RESULTS: 

    • Falling: Player resets to start position if fall out of level (it has gaps initially).
    • Health Runs Out: Player passes out and returns to cryo room,
      SUCCESS RESULTS: Both puzzles are performed

    If he does this 3 times and not activate heal station or some other methos from stabilize health section, game over player dies.

     

    Can you see if this can be integrated in a ok way with the stabilize health section ?

     

  12. Sounds good plan, looking forward to see what you come up with.

    But let's consider not scrapping cryo room for good, it's nice work there and looking good.

    I vollunteer to bring back later, with some changes, as another room.

  13. Just do it, in the simple dumb way at first.And solve the problems along the way.

    For fps you will probably need a binary network protocol.But for initial testing just have server/client use strings (csv or json if you want).

     

    Probably using Le steam network could be simpler.

     

    Some libs you could use c/c++:

    Asio, SDL_net, POCO Net, libevent.

    Also i used go lang a couple of times for the server, simpler.

     

    • Like 1
    • Upvote 2
×
×
  • Create New...