Category: Uncategorized

  • PersistentWindows 1.0.1 released

    So I’ve been using the utility at work and it sometimes works and sometimes doesn’t. I’ve noticed a few issues

    1. Occasional race conditions occur when the monitor changes so I’ve improve the logic on resolution detection.
    2. I’ve also modified the little GUI to provide a bit more informative feedback.
    3. Improved the handler on maximized windows

    Finally, I’ve also noticed that sometimes it doesn’t move a few windows and I was spinning the wheel a while to figure out why. Turns out those processes were running in admin, so if you want those restored, you have to run the utility as admin as well.

    Slowly and surely, I’ll continue to improve the product.

    Good night world!… Read the rest

  • Persistent Windows 1.0 Released

    It is lean and nasty…. but it does the job. I’ve already got a few ideas to make it more convenient, but Diablo 3 calls my name.

    Check it out @ http://www.ninjacrab.com/persistent-windows/… Read the rest

  • Dealing with DisplayPort plug and play

    So, I’m having an issue at work with my display setup. I have three monitors connected to my workstation, two via DisplayPort and one via DVI. Every time the monitors go to sleep it does the following:

    1. Windows gets a signal that the monitor has been disconnected
    2. Windows then re-arranges the windows that I had on the display port monitors to a desktop that it considers active(The DVI monitor)

    When the monitor wakes up, I have to re-arrange my windows back to where I want them and this is an incredibly annoying task, especially as I take numerous coffee and bio breaks daily.

    This is not special to any graphics card and there are numerous posts on this issue. This is the behavior of display port as it’s supposed to be “Plug and Play”. if I pull out the cable, that makes sense. However, powering off shouldn’t exhibit the same behavior as unplugging. Nvidia has a solution implemented in their … Read the rest

  • Facebook Unity – Keystore missing

    So I just recently noticed that the Facebook team wrote a unity plugin to make your games easily integrate with Facebook! I’m super excited to get Conflicademia connected so off I went.

    Apparently, a while ago, I attempted this before and found an old Facebook assembly that I couldn’t get working. It also conflicted with the new library and so step one was to remove that booger. This is not likely something anyone else will have to do.

    The next thing was to correct an issue with the imported module. In the Assets/Facebook/Editor/android/FacebookAndroidUtil.cs class, there is a method to return the debug key store path. When imported it looked like the following

    private static string DebugKeyStorePath
    {
        get
        {
             return (Application.platform == RuntimePlatform.WindowsEditor) ?
                System.Environment.GetEnvironmentVariable("HOMEPATH") + @"\.android\debug.keystore" : 
                System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) + @"/.android/debug.keystore";
        }
    }

    Problem is that the HOMEPATH variable doesn’t include the root drive on my machine. I assume it must include the root drive on the devs @ Facebook … Read the rest

  • SysWOW64 burns a few hours

    My latest adventure involves me setting a profile for Powershell to import a module so that I can use a custom script without manually loading it each time. So run off to find that the environment variable is $profile.allusersallhosts. It maps to a file “C:\Windows\SysWOW64\WindowsPowerShell\v1.0\profile.ps1”, so I open up Notepad++, place my import statements in there and life should be good!

    However, it’s not working. Not only is it not working, when I go into that folder the file isn’t showing. I have literally no clue where it’s saving so I use SysInternals ProcMon and watch Notepad++ to see the resources it’s using. Turns out that since notepad++ is built as a 32bit application, anytime it looks for the folder c:\windows\system32, some magical internal windows thing routes it to c:\windows\syswow64. So even though Notepad++ shows the folder to be system32, it actually isn’t.

    In the end the solution was to use notepad.exe or any other 64bit editor that won’t discreetly … Read the rest

  • Fighting Git with many tools

    So I decided to create a branch in Git to implement a nice new feature and after about a week or so, I get to a section of code that was shared with my cohort and course changes were made that I wanted. So I figured, “This is what Git is good at, right?”

    In theory yes, but still coming from Subversion it took a lot of pain and many tools to figure out how to get it working.

    I attempted to “Rebase” from subversion unsuccessfully many times as when conflicts were discovered, the progress bar just kept spinning and spinning and spinning. So while testing I corrupted my local code base… many times over. I literally cloned from the safe point about 4 times before I finally got it right.

    I used the Git/Git-bash tool to initiate the rebase doing

    git checkout MyAwesomeBranchOrSoIThought
    git rebase master

    Now it would stop midway and mention to fix the conflicts before resuming… … Read the rest

  • Android Studio – Local path doesn’t exist

    Playing with Android Studio again tonight and my little Facebook test app, I received an annoying error that I thought was resolved by cleaning the project and importing it fresh again. Sadly, the error came back again

    Uploading file

    local path: D:\Ninjacrab\Projects\FacebookTesterProject\FacebookTester\build\classes\debug\FacebookTester.apk
    remote path: /data/local/tmp/com.ninjacrab.facebooktester
    Local path doesn't exist.

    When I review the file system I see that the apk is generated but in a different folder and with a different name.

    D:\Ninjacrab\Projects\FacebookTesterProject\FacebookTester\build\apk\FacebookTester-debug-unaligned.apk

    However, it seems as though AndroidStudio doesn’t want to use that APK for debugging. After some painful experimentation it turns out that there is an poorly documented option that is not included in the “.iml” file that you can configure to fix it. (My .iml was located at D:\Ninjacrab\Projects\FacebookTesterProject\FacebookTester)

    There are multiple “.iml” files, one for the master project, one for the module that contains that produces the apk. If you edit the “.iml” file for the module and add the following option with path respective … Read the rest

  • I’m still alive!

    Well, there have been some big changes in my career recently and so the game as well as the coding YouTube videos have been put on hold. Things are finally starting to settle down and I’ll be able to put some weekend time again on these and hopefully the one or two web crawlers that access my site will enjoy.

    I’m hoping to get at least one video out there for the month of July!

    Cheers!… Read the rest

  • Yet another blog

    So I’ve decided that I’m going to create a blog for the game development stuff. This will look mostly like code check in comments until it eventually gets to a point where the game actually hits a Beta.

    Enjoy!… Read the rest

  • Game scripting engine

    So I’m starting to get back into the groove of coding my game and I’m at somewhat of a roadblock on how much I should make scriptable.

    So for a brain dump, I’ll state what am I looking for right now?

    Dialog sequencing
    Entity administration(adding/removing/altering)
    Triggering other sequences
    I’m wanting at least these features so at any given level I can do the following.

    Tell a story as the level begins
    Add stuff to kill
    Do something if you die
    Do something when the boss dies
    Perhaps this is too much and should be hard coded in the game for a unique kind of boss mob. Not sure, but I feel that’s restrictive. I’ll start with the goal of these things now using some sort of xml scripting syntax.

    I thought about using Lua or JS, but I just can’t imagine that it would be easier using that than some fixed rule system. So homegrown ScriptML it is.

    Suggestions welcome!… Read the rest