About
This game is a project I decided to do for an advanced JavaScript class in the Spring of 2018 semester. For this project, I used the
createjs library, a style sheet called normalize.css (which is an open-source downloadable from MIT's git.io page), and a scrap of paper that I saw on a search engine as a free image. All of the code written is 100% mine, and all of the images were drawn and created by myself, which means if you love it, I get all the credit, and if you hate it, I take all the blame. I really hope you love it, though.
The idea for the game is based on the book, "
Crossing the River with Dogs: Problem Solving for College Students" by Judy Kysh, Ken Johnson, and Ted Herr. I used this as my primary textbook for a class called Math and Logic, which was taught by Julie Bellman at Blackhawk Technical College. The class focused on real-world problem-solving using math-based algorithms. Now, I'm not really a math-savvy type of person, but I really enjoyed the class because it was heavy on the logic and problem-solving, and very light on the math part. The "worst" part was the basic Algebra section, which I was fine with. We did a lot of fun stuff in that class, like logic puzzles, converting numbers into binary and hex, making Venn diagrams, using modal logic, doing calculations with non-base-10 number sets, and much, much more.
How this game came about is just me being stubborn. I thought making a simple puzzle into a game would be "easy", and so I made an attempt to write the game as a side-project while learning the programming language, C#. I failed. My code was an absolutely incomprehensible mess, so when I took a break from it for a day, I came back to the code as if I were trying to read Sumerian cuneiform. I told myself I'd revisit the idea "later". For some people, that translates roughly to "never". I'm a different kind of breed, though. I'm the kind of breed with a lot of free time, and an unwavering tenacity for frivolous pursuits. I wrote a text-based version of the game in Java, but the interface was ugly.
For my advanced JavaScript class, I started brainstorming a bunch of different ideas for a final project. I needed something challenging, but within an appropriate scope. After all, it'd be one person writing it over the span of a few weeks. I couldn't go overboard and make a universe simulator. I had never done anything with graphics with JavaScript before, so I just figured it'd be a fun learning experience, and lo and behold, I right for once.
As far as my 'artistic direction' goes, I had a lot of ideas. I looked around on the internet at other river-crossing games to see what had already been done in order to try and do something different. Most of the other river-crossing games looked either really bad or really cartoony. Some of them made
really annoying sounds. I guess there isn't really much of a market for learning tools for adults. Therefore, I could basically do anything I wanted, and I had been drawing a lot at the time (I don't know where I am now as you read this. Hopefully not in jail.) so I thought it'd be fun to draw the dogs and the people. I originally intended to have two male humans and two female humans, and the same with the dogs. While brainstorming, I kicked around some ideas for the correct male-to-female ratio in my boat party, and then came up with the brilliant idea for ALL the dogs to be male and all the humans to be female. I wanted all of the humans and dogs to have names, and to look differently from each other. Finally, I wanted it to look like something you could draw on a scrap of paper while trying to figure the puzzle out.
In retrospect, I should have logged my hours to see how long in real-time it took me to make this. A majority of my time was spent testing stuff over and over, and rooting out various bugs. That's how, I believe, you make a good end-product; Stress test it, and if it holds up, and does what it's supposed to do, then it's a good program.
Thanks to:
My family
Mike Wagman (Rest in peace.)
Julie Bellman
John Wanda
Denny Wright
Jeff Scott
Amy Burns
David Linton
Federico Bassetti