[GAME] EmptyEpsilon

1323335373841

Comments

  • In this case, he was doing Mac to Mac. I'll have him be sure he used the same version. Likely since he just did it in the last day, but I'll have him double check.

    Esc did not take me anywhere when running the server instance.

    Thanks
  • What did you do on the server? If you just started the scenario and stayed in the ship/station selection screen, escape should indeed do nothing, but then you should just be able to go back to scenario selection.
    If you are running station/a screen on the server and can't go back by pressing escape, this might be a bug.
    Or did you run a headless server?
  • I started the game selecting Waves (Easy) and main screen. I also selected warp drive. The game played fine, it was at the end that Esc did not do anything for me.
  • Hi,

    I have minimal knowledge of building on Linux and extracting from repositories. I'm sure someone can tell my how to address this error:

    hamilton@asimov:~/emptyepsilon$ git clone git@github.com:daid/SeriousProton.git
    Cloning into 'SeriousProton'...
    Permission denied (publickey).
    fatal: Could not read from remote repository.

    Please make sure you have the correct access rights
    and the repository exists.
  • edited December 2017
    Hm.. as I never had that problem with ESC not working, I can't say much about it, maybe others may have an idea. What OS did you use where that problem appeared?


    That line works only when you have a github account.
    To check out anonymously, do:

    git clone https://github.com/daid/SeriousProton.git
    and later
    git clone https://github.com/daid/EmptyEpsilon.git

    About the second line: you may consider what I posted previously about release downloads to ensure compatibility with the windows versions and download a release zip instead. Also keep in mind that you would have to change the version number for being recognized by the windows machines (Like in the section "A Note About Version Numbers")
    so with the latest version, the full cmake line should be
    cmake .. -DSERIOUS_PROTON_DIR=$PWD/../../SeriousProton/ -DCPACK_PACKAGE_VERSION_MAJOR=2017 -DCPACK_PACKAGE_VERSION_MINOR=11 -DCPACK_PACKAGE_VERSION_PATCH=03
    
    Of course that is not needed if you just want to use the newest features and don't care about compatibility with the last release.

    Also, as you talked about multiple Linux machines, you may also consider to install checkinstall before you continue. Then, replace the final make install in the tutorial with checkinstall and follow the instructions. That will create a .deb package that you could distribute and install on other machines.

  • The home key should also work instead of escape. (As escape is always direct quit in debug builds)
  • Hi,

    Build ends up with this error:

    [ 99%] Linking CXX executable EmptyEpsilon
    /usr/bin/ld: EmptyEpsilon: hidden symbol `__cpu_model' in /usr/lib/gcc/x86_64-linux-gnu/5/libgcc.a(cpuinfo.o) is referenced by DSO
    /usr/bin/ld: final link failed: Bad value
    collect2: error: ld returned 1 exit status
    CMakeFiles/EmptyEpsilon.dir/build.make:7121: recipe for target 'EmptyEpsilon' failed
    make[2]: *** [EmptyEpsilon] Error 1
    CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/EmptyEpsilon.dir/all' failed
    make[1]: *** [CMakeFiles/EmptyEpsilon.dir/all] Error 2
    Makefile:149: recipe for target 'all' failed
    make: *** [all] Error 2
    hamilton@asimov:~/emptyepsilon/EmptyEpsilon/_build$


    Comments?
  • That problem isn't EE related but SFML/Ubuntu related: https://en.sfml-dev.org/forums/index.php?topic=20638.0
  • So hey, aforementioned brother, here. Rebuilding with matching version numbers solved the Mac-to-Mac no-networking problem.

    Before using the Cmake commands to adjust the version number (matched 2017 11 03 since it's what the Windows build is at), I also checked out the EE-2017.11.03 tag to be certain that my build is from the exact same everything, not just matching the version number. So far, I've only played the Helms station in-game, which seems to work pretty well.

    I did have some trouble with visibility of targets on the Science console, both in-game and in the tutorial: there is nothing visible to click. This happens on both Macs. So I had to just click around where I thought the targets were. At least the radial perimeter display around the edge of the Science radar suggests where I should click. However, this means that Science is effectively unplayable. Is this a known issue with the Science console? Is there a workaround?

    Finally, after the build is completed, there are a number of files that Git wants me commit. Clearly, I shouldn't do that. From a brief reading of Cmake, it seems like it should be possible to have the build happen outside the repo. I have no idea what to read up on. Can I buy a clue?
  • There is a known rendering problem on science and relay on Mac.

    Best is to build in a different directory then the source tree. Generally I do "mkdir _build; cd _build; cmake ..; make" to build in a subdirectory. So the git status stays clean.
  • Note, I'm trying to build a new windows release based on SFML-2.4.2, but I'm running into some compiler/build/compatibility issues.
  • Late to the party, but:
    Has anyone had any luck with the issue on some touchscreen platforms that requires the user to swipe or double-tap for every input?
    I've also had this problem on two different Lenovo touchscreen laptops (P40/Win7 and Yoga 720/Win10) for as long as I can remember. Both also support pen input, and the pen works fine. I left a comment back on page 28 about it.
    SFML never receives the tap from the OS as a mouse click. Touchscreen mode doesn't change the behavior.
    It's a SFML input issue and affects almost every game and app I've run on Windows that uses SFML--the only ones that work apparently didn't use SFML's input system out of the box. I'm not sure if it's changed recently, but SFML 2.3 still didn't have consistent cross-platform touch support (a Windows multitouch PR has been held up since 2015, hasn't been updated for months, and doesn't improve this specific behavior anyway).

    I've had no issues with touch on either device running EE off netboot or an Ubuntu 16.04 live stick/CD. That's the only workaround I can suggest.
  • Also, SFML on OS X is starting to look like a lost cause. New OS X releases are breaking things faster than SFML's devs can fix them. For example, OS X 11.11 broke RenderTexture, which EE uses on radar views and GUI elements, back in at least August of last year. A patch for it didn't land in time for 2.4.2 and doesn't seem to completely fix the problem.
  • If you'd like me to provide rendering feedback from a Mac client, give a holla.
  • I know there are issues on Mac. I know there will be more issues in the future. From a few years of supporting other software on Mac I know how much of a pain in the ass OSX updates are. And their OpenGL drivers are picky as hell.
  • Hemm. After I create a Build folder and cd into it, I can't get cmake to run. I know it's folder structure related, but I don't know what values to use. My current command is based on some of the above discussion:

    cmake .. -DSERIOUS_PROTON_DIR=$PWD/../../SeriousProton/ -DCPACK_PACKAGE_VERSION_MAJOR=2017 -DCPACK_PACKAGE_VERSION_MINOR=11 -DCPACK_PACKAGE_VERSION_PATCH=03

    And I get:

    CMake Error: The source directory "/Users/me/Documents/EmptyEpsilon" does not appear to contain CMakeLists.txt. Specify --help for usage, or press the help button on the CMake GUI.
  • Got it. Modified the CMake command to:
    cmake ../EmptyEpsilon -DSERIOUS_PROTON_DIR=../SeriousProton/ -DCPACK_PACKAGE_VERSION_MAJOR=2017 -DCPACK_PACKAGE_VERSION_MINOR=11 -DCPACK_PACKAGE_VERSION_PATCH=03

    That looks like it's done it.
  • At least I'm left with fewer files in the repo that want committing. Sigh. I guess it's just a bit of a pipe dream.
  • edited December 2017
    If that last cmake command works, it does look like either your directory structure is not correct, or you are in the wrong directory when you start compiling.
    For example, that's what my directorie structure look like:

    source
    EmptyEpsilon
    _build
    SeriousProton

    That way the line I posted should work (if you are within _build when you start compiling)
    What does your directory tree look like and what is your current directory when doing the cmake command?
    of course, git will always complain that that the _build dir is not tracked, but that can just be ignored
  • edited December 2017
    Correct? The idea (at least the way I understood) was to get the build directory out of the repo. So the structure is:
    EmptyEpsilon
    Build
    EmptyEpsilon
    SeriousProton
    And the cmake command was executed with EmptyEpsilon/Build as the working directory.

    The trouble is that six files are created in the EmptyEpsilon/EmptyEpsilon folder. Those are the ones that Git whines about.

    :-)
  • edited December 2017
    In my example, _build is a subfolder of (the repo-folder) EmptyEpsilon, as suggested in the tutorial. I guess your structure should also work, but I am not really experienced concerning cmake.
    And as I said, when done with _build as a subfolder, there is still a minor complaint about the directory not tracked, but that is easilly ignorable.
    Which are the six files that are created?
  • Figured out why my build was no longer working. Managed to hack together a working build. Will have a proper release within the next 24h I think.
    (I had to compile all SFML dependencies and SFML from scratch, which was a bit of a minefield, I can put together a working build manually now. So just have to fix the automated build)
  • edited December 2017
    Merry Christmas!

    I'm starting a mission script using the MP52 Hornet as the player ship. I am able to get the "escape" victory condition to work, but I cannot get the player ship to fire, nor does the enemy ships (also fighters) fire. Any suggestions?

    -- Name: Prevent War
    -- Description: You have been sent on a critical mission to prevent tensions from escalating into war.
    -- Type: Mission
    -- Variation[Hard]: More enemies
    -- Variation[Easy]: Fewer enemies

    require("utils.lua")

    function init()
    player = PlayerSpaceship():setFaction("Human Navy"):setTemplate("MP52 Hornet")
    player:setPosition(22400, 18200):setCallSign("Sparrow"):setRotation(180)
    kraylonChaserList = {}
    kraylonChaser1 = CpuShip():setTemplate("MU52 Hornet"):setFaction("Kraylon"):setPosition(24000,18200):setRotation(180)
    kraylonChaser1:orderAttack(player):setScanned(true)
    table.insert(kraylonChaserList,kraylonChaser1)
    if getScenarioVariation() ~= "Easy" then
    kraylonChaser2 = CpuShip():setTemplate("MT52 Hornet"):setFaction("Kraylon"):setPosition(24000,18600):setRotation(180)
    kraylonChaser2:orderFlyFormation(kraylonChaser1,0,400):setScanned(true)
    table.insert(kraylonChaserList,kraylonChaser2)
    end
    if getScenarioVariation() == "Hard" then
    kraylonChaser3 = CpuShip():setTemplate("MT52 Hornet"):setFaction("Kraylon"):setPosition(24000,17800):setRotation(180)
    kraylonChaser3:orderFlyFormation(kraylonChaser1,0,-400):setScanned(true)
    table.insert(kraylonChaserList,kraylonChaser3)
    end
    plot1 = chaseSparrow
    end

    function chaseSparrow(delta)
    kraylonChaserCount = 0
    nearestChaser = 0
    for _, enemy in ipairs(kraylonChaserList) do
    if enemy:isValid() then
    kraylonChaserCount = kraylonChaserCount + 1
    if nearestChaser == 0 then
    nearestChaser = distance(player, enemy)
    else
    nearestChaser = math.min(nearestChaser, distance(player,enemy))
    end
    end
    end
    if kraylonChaserCount == 0 then
    plot1 = nil
    elseif nearestChaser > 5000 then
    plot1 = nil
    end
    end

    function update(delta)
    if not player:isValid() then
    victory("Kraylon")
    return
    end
    if plot1 == nil then
    victory("Human Navy")
    return
    end
    if plot1 ~= nil then
    plot1(delta)
    end
    end
  • edited December 2017
    And on the first day of Christmas, Daid gives you: A new release!

    This is mainly a whole bunch of small bug fixes, the philips hue stuff, and the rendering of far away planets. And hopefully the OpenAL issue.
    Let me know if there are any issues, as this builds on top of SFML-2.4.2 instead of 2.3.1 that I used before.
  • edited December 2017
    Nevermind, I`m an Idiot. Delete if possible.

    EDIT: And THANKS Santa Daid!

    Meh okay, yet still had an Error. I tried to open a selfmade scenario:

    Error occured on Monday, December 25, 2017 at 21:32:53.

    EmptyEpsilon.exe caused an Access Violation at location 005D4A4C in module EmptyEpsilon.exe Reading from location 000003D4.

    Loading symbols... done.

    Registers:
    eax=00000000 ebx=01a85b24 ecx=112b7528 edx=0e911500 esi=0071a570 edi=0e8d36d0
    eip=005d4a4c esp=0195ee20 ebp=0195ee88 iopl=0 nv up ei pl nz na pe nc
    cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202

    AddrPC Params
    005D4A4C 0195EEEC 0195EEE8 0195EEE4 EmptyEpsilon.exe!ShipTemplateBasedObject::setTemplate

  • Thanks, Daid! Today's release fixed the OpenAL issue for me on Windows 10.
  • Hi,

    Thanks for the Christmas update. I've been working on a mission script. When victory occurs for the Kraylons, it just says Victory just like it says if victory goes to the Human Navy. This makes me want to blow up the player ship just to emphasize the difference between the Kraylon victory vs. the Human Navy victory. Can we get text on the screen to go along with the victory declaration indicating who the victory is for?
  • https://github.com/daid/EmptyEpsilon/blob/master/src/screenComponents/indicatorOverlays.cpp#L112

    Are you sure? A Kraylor victory should result in a Human Navy defeat. And if you are viewing a shipless monitor, you get the indicator on who won.
    What could have happened is that you made a typo in the faction name, which causes the neutral faction to win, which is shown as a victory for everyone.
  • edited December 2017
    It was a typo. I was calling Kraylors Kraylons :wink:
Sign In or Register to comment.