Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

154 Excellent

About aiaf

  • Rank
    Advanced Member

Profile Information

  • Gender

Recent Profile Visitors

5,328 profile views
  1. aiaf

    Coroutine Sequences

    will be something similar to this in c++?
  2. 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.
  3. aiaf


    Te gui is missing a few examples but its really easy to use and very flexible. https://www.leadwerks.com/learn?page=API-Reference_Object_Widget_Button Btw the gui system will be available to turbo in a form similar to what we have now ?
  4. 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.
  5. aiaf


    Duh microsoft, Its mpeg4 , guess you could download the file and play it with vlc , or use a proper browser chrome/firefox
  6. Whatever library you use there should be built with MT or MTd(if you use debug version). https://docs.microsoft.com/en-us/cpp/build/reference/md-mt-ld-use-run-time-library?view=vs-2019
  7. aiaf


    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. test.mp4
  8. Really good progress.Lots of work. Im close to finish with level01a and i will try to help here.
  9. Have a look at my cmake based project for leadwerks (works linux,windows): https://github.com/aiafrasinei/lep If you still need help with this i can do it.
  10. 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.
  11. Necro posting , this just happen to me and its 2019. Was solved by driver upgrade.
  12. 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.
  13. 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: active effect on the monolith when self test failed (redish effect + humming noise and some crackling) active effect on the monolith when all test passed (green effect + humming noise smooth) exit vr sound specific sound when executing a command from the terminal 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 ?
  14. aiaf


    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.
  • Create New...