Thursday, May 24, 2018

Are games entertainment, technology or art?


This is derived from a work we read in class once about History, is History Art or Science? While this is highly debatable, and we never truly reached an agreement on what exactly History in the 21st century is it inspired me to write about the current state of video games, what are they, entertainment and a time drainer, a great experiment on pushing and testing technology to the breaking point (and there are plenty of examples here) or is it art, a new field in which we can express ourselves without limit?

Games as Entertainment for Generations:
It is true that games are entertainment but they can be informative and educational while keeping us hooked, the earliest memory I have of such a game would be Super Solvers Math Adventure in which I had to learn how to do proper math in order to progress through the game, truth be told I learned and enjoyed the game, Oregon Trail is another good example but I only found it later during my adult life and I can understand why those who played have fond memories of it (also why the dysentery part). On the other hand we can find games that will suck us in for days, weeks or months, Doom, Wolfenstein 3D and Commander Keen where some of the earliest examples I can think of which I would play at computer lab back in 1994, our professor was a hell of a cool guy to have those games installed but on the other hand putting us through such an experience during 2nd grade really made an impact on me, even today when I play the original Doom or Doom II back I still feel anxious when opening doors or going through dark areas, this effect has lasted for more than 24 years!

I could keep dropping names here, everything from the original NES, SNES, Sega Genesis, N64, PlayStation, XBOX and PC throughout the 90s and 2000s, some I am not as fond of and I could care less about such as most Nintendo games, my nostalgia has not driven me back that hard so that I want to play those games, I would probably enjoy them no doubt as Nintendo had some quality stuff back in the day but not enough to drive me back to either find the console and the original games or get an emulator to play them again. Entertainment, in my opinion, is something that sucks your time, gives you fond memories, makes you return for more and even years later you find yourself sitting back on your favorite chair and giving it a try, even passing it on to future generations,

Games as the Technology pusher:
Some games have really pushed technology to evolve rapidly to keep up with demand, hardware can hardly cope with the ever-growing needs of software, while this could be blamed on bad programming practices or bloated code this can also be blamed on ambition to provide a better product (and this is valid). Notable examples that come to mind would be Doom III (the specs back in the day shocked us, the video and RAM requirements demanded a monster of a machine which if curiosity strikes the mind was a single core Pentium 4 1.5GHz processor, between 256 to 512MB of RAM and a video card with 64MB of RAM). The next big jump came in the form of Crysis, even today it's still a joke between gamers to say, "but can it run Crysis?" to which most modern systems should say yes, yes I can run it, but, back in the day the question on everyone's head was "who has 2GB of RAM on their machine, a dual-core? Wow, you need a video card with 512MB of RAM, what?". These specs required you not only to upgrade your hardware but, in most cases, it was also demanding that you upgraded your operating system (when Crysis era the migration to Windows Vista had started after having Windows XP in the wild for some 6 or 7 years, this was a weird time thinking about it). Personally, I have never changed computers to play games of the current generation, I wait a couple of years to get some cheap hardware and pump it up as high as I can to get the most out of it, be it desktop or laptop, as I don't feel the need to change computers or upgrade every year, better do it every three to five years.

Games as a method of expression and possibly the ultimate type of Art:
Video games have pushed technology so that they can push something new (or at least that's what I would like to think) to us, better storytelling, quality cutscenes, from linear to multiple endings/options (which have shown great results such as Chrono Trigger and horrendous backlash such as Mass Effect 3), presenting worlds that at one point could have only been shown in a table-top environment (Dungeons and Dragons or Shadowrun), but reality also tells us that great visuals and music that brings us deep down into this world through the avatar designated by the developers will not always result in a great experience, throwing more money at it does not always fix the issue, sometimes it's a matter of taste, a strong player base and reaching expectations (which is not always the case, you can't satisfy everyone but checking the opinion/commentary of your player base through social media could, potentially, maybe, save your product from falling through the cracks and end up unnoticed).

Video games have been part of my life since my very early years, for whatever reason my dad had an Atari with a printer, I remember this because I at one point remember bringing some type of homework or piece to school when I was in elementary, this was way back in 1993 probably. 

Wednesday, May 23, 2018

Learning something from older videogames

The older I become the more interesting older video games become to me, the newer ones have something enticing too but as I have come to focus on a specific type of games or maybe I am just part of a demographic who want something either more detailed that has way too many ramifications to be humanly possible to follow through with any of them.

A recent example of something that got my attention again was Railroad Tycoon and this by mere chance when going back through some games I’m selling on eBay, Railroad Tycoon was one of those games that I bought somewhere in the mid to late 90’s back when I was in elementary, I bought that purple players choice box from Microprose at KB Toy Liquidators (rest in peace, such a great place and so many fond memories and games!) that I would have not obtained through any other means and going to the store was also another mere chance, finding the game on a discount bin for about a dollar together with Dragonsphere and Return of the Phantom of the Opera, X-COM: Terror from the Deep and some other Microprose good games from back in the day.

I tried the game and found it to be a little too complicated because English is not my first language and back then I was still learning, I did get to enjoy it quite a bit but never got through with the game as I have in recent times.

My latest playthrough with this game taught me that mechanics found in Railroad Tycoon 3 and Sid Meier’s Railroads! were already present in the original Railroad Tycoon and RRT 3 polished to what could have possibly been the best it could get too (or maybe I’m wrong here, I think Railway Empire could be a true successor to the Railroad games).

From replaying RRT I noticed that not only my grasp of English is better (after some 20 years it should be as I have been working mostly for American companies) but my understanding of the mechanics was derived purely from experience from figuring out other games that followed other mechanics so it was easier to go from more complex games to simpler ones (not that this is always the case but this is how I see it from this point in time).

Reading the manual obviously gave me much more insight that experience alone could have thought me and in a much shorter time span, playing the game in investor mode, dispatcher mode and complex economy surely made for a more interesting game, but I have yet to play with cutthroat AI but so far, I have learned the following things from my experience playing the game:

  1. Micro management can be a total pain in the ass when you start expanding too much way early in the game, while I had more than 2.5 million in the bank by 1866 in the East Coast (where is the Civil War, eh?) I did not have an effortless way to handle the 20+ locomotives that I had at the time and station wise I had around 15 or 16 at the time with more on their way but the madness that was becoming of this was not making for an easy game.

  1. My administration of the lines (express and local) was not working as I had intended, passenger/mail trains were getting stuck waiting for freight trains to move through the signals and I was losing valuable money (not that I really needed it, but if you are selling such a service you should deliver, maybe I’m just roleplaying here).

  1. I had to build a sort of logistical map to figure out what was going out anymore, the complexity of said map (in paper, because I could for the life of me not figure how to put this in a computer at the time because I wanted something simple) was such that I truly understand why such precision was needed in real life when moving trains around, one bad move and a collision could happen or trains could get out of their time tables and money is lost, you get the gist out of it.

  1. My logistical nightmare eventually taught me that dropping certain materials at certain stations (just like in later versions of RRT) that were being used as a central to haul resources to other stations was the best way to go, mixed trains could potentially solve the issue at the time and later with faster trains I could continue to push for better centralization.

  1. I had always improved stations to get more profit, but I had never truly understood the purpose of the other buildings such as the switchyard, the pen, goods storage, etc. Now with that in mind I could push to centralize even more things and then move them elsewhere and keep the system rolling, shorter hauls were better in my mind at this point and in a way, it worked better as it would clog the system less than with the 20+ trains running around although this would be done at a slower pace.

  1. I had invested way too much brain power into the whole thing and I was freaking out for not being able to have a better logistical system and then I figured out that I’m just a guy in his 30s who’s investing too much time in a videogame that is meant for people to relax while playing with trains.

Game Mechanics, an opinion


There has been a considerable shift in games throughout the years, nowadays I mostly focus on city building and grand strategy games, there are some first person shooters (I miss Ghost Recon [Racoon]: Phantoms even with all the damn Pay-to-Win) that have driven me back but nothing else that really catches my attention. One of the things that I believe everyone who has been playing for a while will notice is that there has been a real polish in some genres which favor end-user experience more than true mechanics or true playability, that is that you enjoy the game so much that you can replay it again (FPS have something that even though people hate on them they keep buying the next game, so that is that). Fine tuning mechanics is essential for great game-play, especially when doing online competitive gaming, so there are some cases that I can think of in which they were both a blessing and a curse, below are some points with considerations about the subject:

  • The polishing and eventual simplification of mechanics makes the game flow faster and I would assume that in some way or form this also helps code work smoother and cause less bloat when performing some of the calculations (I can only imagine what goes behind the Crusader Kings II or Europa Universalis IV background). On the other hand this can feel as something valuable being lost in the process, while this is debatable it depends how big the change is and I can think of some considerable changes in gaming that brought so much commotion about a set of simple changes:
    • e.g.: Some of the Starcraft patches back in the day like patch 1.08, in which Zealots got their numbers moved around from 80 shield and HP to 60 shield and 100 HP, while this was not the only drastic change, on this same patch would see the cost of Battle Cruisers go from 8 to 6 supply which is a massive change also. Back with this patch the community of Starcraft went up in flames and was split up with the decision, this and other balancing efforts in the future would continue to provoke this behavior but this is expected when a community this large finds new ways to play the game and take advantages of the buffing or nerfing of whichever mechanic is/was broken/fixed.
    • e.g.: Civilization III combat, one of the main complaints about what was a great game (personal opinion) was that the combat mechanics were broken as hell, a barbarian warrior (the earliest type of unit in the game) with only two/three blocks of life could defeat a late age tank with five blocks of life, how this worked (or not worked) was a true mystery at times which drove players mad, the problem about having this little barbarian going around tearing your improvements up was that wasting tanks during what could be a tense period of the game meant risking it maybe twice of thrice to get that nuisance off your yard (yes, I lost three tanks once to a barbarian). Civilization IV did not suffer from these issues and they also fixed the problem with Saltpeter being a very rare mineral, if you did not have the expansions to bring in Guerilla fighters to the fray you were truly out of the contest with your peers or stronger opponents.
  • Players may also not fully understand the reasoning behind some of the changes (or developers either do not wish to put too much on the table or are just bad at it, take your pick, not dissing anyone though) performed on the game mechanics. While balancing is mostly the reason to do this it is not the same to test it in a closed environment with a couple of players than test it on the wild (this is why some games will give you the option to beta test their new patches so that you can report on whatever bugs or issues you may find, even broken mechanics). While some balancing is performed due to exploits in the code (which is unavoidable) there is also the fact that some players will also find a way to break the current balance by performing X, Y, Z action to do so (not an exploit, more like number crunching and some hard thinking, for reference look at all the changes that World of Warcraft has gone through since Vanilla)
  • Sometimes mechanics just don't work as intended or simply don't pickup as expected and this happens because the final product is not what was intended or the player base has a different understanding of what the whole thing is/was about, at times this is not the fault of either party as things change and these are no longer relevant in the game and either disappear or are changed for a different mechanic.
  • New mechanics “are” (this is a very broad word) required with new improvements to the original game/expansion/DLC (does anyone do real expansions anymore or are we just calling them DLCs now?), again these mechanics can be broken as all hell or may not have a counter-mechanic to balance them, sometimes this is intended and inevitable so that the player must make their time due, not necessarily talking about time running out but some other factor that can either end the current game drastically or reduce the possibilities of the player enjoying the game, this leads me to the following point.
  • The fact that the player always wins a game does not a fun game make, something that I like about Paradox games is the fact that I can make a stupid decision and feel the consequences rolling over immediately and for the next hundred years as other nations swallow me up, characters die, planets are burnt to a crisp and I find myself asking “What did I do wrong and how could I have avoided this?”. This in turn has made me stop caring about reloading a game when this happens, I just let it roll and see what is the end result of what actions I have taken as with real life you cannot take it back.

Wednesday, March 7, 2018

The History of a Firewall: How to buy a used Fortigate and not die in the process

While talking with a friend he asked for my input regarding a Firewall option for his small business, he needs something to replace a server which he could be using for whatever else he could think of, we are talking about a rack type server with something akin to two Xeon and 16GB of RAM for an office with less than 20 workers which are only during some times of the day.

Overkill is the right word here.

Asking around many solutions came by, Cisco ASA, FirePower, Palo Alto, SonicWall and Fortinet were some of the names that rang the most but I was somewhat familiar with Fortinet and the price range was reasonable for what it does in general but I decided to take a dive onto eBay and managed to squeeze some money out of a Fortigate 60C (it ended up being 50 dollars with tax and shipping).

This was a slippery slope to "what the fuck is going on and what am I doing?".

Getting it was fast and easy, opening the box confirmed that I had received what the seller specified, plugging it in gave me nothing but a power light and a blinking status light that went off, looking at the documentation it was not clear to me what was going on but getting no IP address from the device on the LAN ports made it clear something was not right.

I tried following the other instructions which indicated there was a Web UI, which I could never get to even with a static IP address, no routing, it would not get an IP address through the WAN port, the appliance was dead apparently.

This is when I complained to the seller, which provided no feedback, about not specifying that the appliance had either been wiped clean or that configurations were still in place. The only way to figure this out was to get a RJ45 to DB9 cable and work my way through the console.

If you are wondering how that even works in 2018 let me tell you that I keep an old laptop for this purpose, a Toshiba PIII laptop with Windows 98 (I love doing retrocomputing, guilty as charged, also I do not have a docking station for my T400 otherwise I would not have to use it).

Bringing the connection up with PuTTY showed me a screen asking me if I wanted to do a test with or without express card, I was baffled by this but I got it to go through the test without an express card and it indicated a failure with the USB and Ethernet ports (because I was missing the loopback wiring it requires but I wasn't looking to make any tests, I wanted to get this working).

Turns out that I was running a troubleshooting firmware that came with the Fortigate which was in the backup section, there was no main firmware loaded onto the device so this took me to the next logical step which was getting an account with Fortinet and registering the device.

This is where the "what the fuck is going on" part gets interesting.

It turns out I could not register the device with the SN and it would ask me to contact Support, when I contacted Fortinet Support they told me nothing could be done as:

1) This appliance was registered under a different name and I could not be provided additional information on this
2) The seller I bought it from was not an authorized reseller of Fortinet
3) There was support or plan I could pay for to get assistance with this
4) I was told to get a refund from the seller because this was pointless
5) Also I got told to read the Terms of Agreement (should do that next time I try to do something this stupid, DUH, bad customer, you used to work customer support, how could you not know this!)

If at this point you are wondering, why is this important? Well friend-o, the whole reason this is breaking my neck is because without this type of support I cannot get the firmware for the device, even though I have it physically with me and I paid money for it I could not get what I needed (I also read about doing the one month free for FortiGuard or some such but I could not find this, my google-fu was weakening because my brain was drying out at this point).

I did not despair though, I assumed a good Samaritan somewhere in the world would be kind enough to have the firmware somewhere in the public even if that meant getting shit-canned by Fortinet. My assumption was right, I found it in an open FTP folder on a website (which I will not name to avoid issues but if you leave a comment or send me a message I can point you in the right direction though).

Finally I had the Fortigate 60C 5.2.8 firmware (fuck the cookbook, I had this and only this, following the damn path was out of the picture at this point) so I had to get working on pushing it through TFTP which in turn takes me to the "what am I doing?" section.

Picture this, I have a Windows 98 computer which is the only one that can connect through the console to the Fortigate, I have no other Windows machine in the house (I run Debian, Windows has been out of the question for years even if I have Virtual machines and other nonsense around, I use it at work half the time, the other half is flying through *nix consoles). I do not want to do a whole ordeal on putting a TFTP on Debian, so I end up downloading tftpd32 version 3.0 which works fine in Windows 98 but I can't get the firmware onto the Windows 98 directly (because the browsers won't work on the site, lucky me eh?) so I get them on my Debian machine, push a Samba folder that Windows 98 can access (how vulnerable am I?) and then onto the tftpd32 folder, setup the DHCP server, connect it to port 1 on the appliance (after reading through the messages on the screen) and pushing it through the console.

Was I successful? Of course! It took about a minute or two to move the image and another minute or two for the appliance to be ready but as soon as it was done it came to life, the Fortigate was alive and I could move through the Web UI as promised (no, I just did not want to deal with the console at this point, thank you very much).

After changing some of the configurations and confirming that I could not register the appliance no matter what I tried I got connected to the internet and began to toy around with the configurations which were easier than I thought.

Was I done? Oh no, I also had to try one last step before I was happy with what I had done.

I had to forward the logs to Splunk, Splunk Light that is because I have no hardware that can run the Enterprise version. After opening UDP 514 to receive logs I could see them slowly moving in (I'm just one person testing it out) and while I could get the FortiGate App for Splunk installed I see little purpose at the moment.

Hope this helps someone in the future (maybe even myself) and save some precious hours of their life. Feel free to leave a comment or message me for any questions regarding this!

Sunday, February 18, 2018

As technology moves further on

Many years ago I learned to use a computer, that was 1994 when I saw the first computer, even for the time they were old but ran MS-DOS 6.2 and later Windows 95, some of the computers had at that time Windows 3.1 and I still remember the blocky look these interfaces had, it was then that I knew I was going to be working with technology and was thrilled about the possibilities, especially since our teacher back then had installed a ton of games on the computers which included shareware versions of Commander Keen, Wolfenstein 3D and Doom.

I think one of the most memorable things I can remember where the old trackball mice we used then, some of the were like bricks and others were getting a bit more curvy but nothing that felt nice on the hand, now we have peripherals that interact directly with the user from the computer itself (I’m talking about touch screens for example, no additional items).

It was until the early 2000s that I saw my first optical mouse, it was a game changer for me, trackball was good because it was the only thing that we had, and back then trackball could be below your hand (which is how most people used them) or on top/side (which are a bit weird to get used to but it is the same as any other new device you have no knowledge or experience with unless you have some time with it).

Now that I think about it, I cannot go back to trackball if it is the old way, I’ve tried alternatives and some seem better than the current optical solutions but I am unsure it will ever pick up again, if it did not pick up back then it’s probably not doing it now (or maybe I’m wrong, if retrocomputing is a thing then why not old mice) but you can always be one of the weird bunch and give it a try, I know I would recommend giving it a try but to watch the wallet because some of these are expensive as hell for no reason? Below are two I have tried in the last year, if you can find them at a decent price then go for it.

Friday, November 24, 2017

CDS/ISIS (WinISIS) Conversion to plain text files

Well, there's always a time in which you find some really, really obscure shit in your life and you wonder why or how you dropped into this place where paths seem very... should I say, fucking weird?

Couple of years ago I was studying, well I still am, at the Faculty of Humanities and Social Sciences of UABC and came to find this really weird database the Institute for Historical Investigations has, never heard of it, or the format, UNESCO was behind it, that's it, not much to do there. Digging up more info into this it turns out that the thing does not work on anything above Windows XP, furthermore this was made for MS-DOS back in the day and has some awkward limitations that cannot be fixed in any way or form, did I mention UNESCO dropped support for it a long time ago and this thing is incompatible with other formats?

What this means in the long run is that you are stuck with something that cannot be upgraded, modified or easily transition to something that has web capabilities, oh yeah, since this was made way back in the day there was no way to get this on the internet without downloading and working with some obscure libraries.

So I volunteered to fix this and make something at least in PHP to have something that could be easily worked with, the problem remains though on how to get this out.

Round 0: Facing thy enemy without knowing anything about it
Does it work: In some lucky instances probably but not this one, after looking around for documentation and trying to do this directly through Python and some Linux commands I noted that this was a stupid thing to do as I had little to no understanding of ISO2709 or MARC for that matter.

Round 1: OpenISIS/Malete
Does it work: Yes and no? For the life of me I could not figure or understand how to get this to work, I even managed to find the executable binary file for Linux but it does not work, it simply will not work without going apeshit about the extensions not being in lowercase and missing some of the files. To top it off this is no longer supported by the developer, unfortunate.

Round 2: isis2json
Does it work: Nope, and this looked like the most viable candidate but I could simply not work out the kinks and requirements, I followed everything that was in the instructions but apparently I'm doing something wrong or it simply is not working anymore since it was done 6 years ago.

Round 3: Isis2XML
Does it work: I don't know about this one, I did not get the chance to try it out since this is for Windows and I could not be bothered to get as virtual machine running with Windows XP in order to test it. May work on other versions, I won't lie, but again I do not have the time to bother with it.

Round 4: CDS/ISIS PHP
Does it work: Nope, could not even figure out what to do with it, you get a couple of files to include somewhere but from what I understand this is part or became part of OpenISIS.

Round 5: Biblio-Isis-0.24
Does it work: Surprisingly yes, had to figure out how to install the module after downloading and uncompressing it (first time using PERL) and afterwards get the initial script to work, I was really surprised when I managed to pipe everything out to a file in which everything came out, well, there is the concern that some characters are not showing up but this can be fixed later, the only problem left for me right now is to figure out a way to get everything moved around in such a way that it can be easily imported to MariaDB or anything else.

http://search.cpan.org/~dpavlin/Biblio-Isis-0.24/lib/Biblio/Isis.pm <- Link to the savior of the day.

Sunday, November 5, 2017

It's been four, *ahem* FIVE years

True, it's been four years now that I've written anything for this blog, or has it been three and a bit?

I think it's time to come back with some new and interesting ideas and tips, maybe even some assistance, with some current projects I have in mind and currently running around my head but haven't properly landed since I lack some of the knowledge to perform it the way I want it to.

While I have moved on most of my work from Windows to Linux that does not mean I have lost sight of the original idea that brought this site to life, also I keep what I personally call the K. Mandla directive alive by putting old hardware back to use with true purpose and intention, I do not intend to make a clock out of a Pentium III machine, rather I intend to get the most out of it by getting it working in a business or industrial environment when applicable or assisting schools when possible, not that it takes most of these schools out of the horrible strain they are in but having a computer with a minimalist version of Linux that lets you browse and work some documents is better than nothing.

Other things currently working on would be an Open Source Timeclock (something simple and easy to install and use using PHP and Python) and an experiment with a Raspberry Pi and Splunk (more on Splunk and other interesting tools in the future).

Installing OSSEC 3.7.0 on Debian 11 (Bullseye) How-To

Now that version 3.7.0 has been released I took another deep dive into how this is compiled from Source, as usual I brought this onto me bec...