Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Blackout - My project for Ludum Dare 39 (did not finish on time).

License

NotificationsYou must be signed in to change notification settings

RaidoWolf/LD39

Repository files navigation

My project for Ludum Dare 39

Click to view the demo!

Theme

Running Out of Power

License

MIT (see LICENSE)

Description

This will be a 2D strategy game where you will be responsible for keeping apower company afloat. The controls will consist of a large map of the city,providing you with an overview of your resources and their status. But thenstuff is going to happen... you know, people running into power poles, everybodyturning on their air conditioning all at the same time, a crazy dude tries tobuild a time machine and decides he needs the full power of a transmission lineto do so. That's when things get interesting.

As time goes on, these emergencies will occur and will down power in an area.Depending on what specific infrastructure is downed, it could affect a wholedistrict, or maybe just a small area. Either way, you're going to have to routerepair crews to clean up the mess because the loss of power means the loss ofrevenue, and a power company operates on a tighter budget than you might expectwhen you look at your power bill.

In addition, as the game goes on, power consumption will increase, and thelikelihood of certain issues will increase as a result. Additionally, your powerplants will be subject to continuous government regulation and resourceshortages, and this will increase the cost of doing business.

To keep playing, you just have to keep your company's net worth in the green. Ifyou run out of money, your company goes under, and it's game over.

Your final score will be the gross revenue over the life of your company, butyou'll also be able to look at the highest net worth and the amount of time yourcompany survived.

The game will be a web-based game written primarily in JavaScript. It should beable to run in any up-to-date browser.

Run-Time Dependencies

This project is built on top of the excellent Phaser (phaser-ce) HTML5 gameengine/framework. This is the only dependency that needs to be present to runthe game. Phaser is, like this game, licensed with the MIT license. I'veprovided a link to the license below. It can be installed using eithermakeorbower install from the root of the repository.

Supported Browsers

Due to some of the advanced features used by the code in this web application,we are unable to provide indefinite backwards compatibility. The following is alist of the supported browsers. Note that browsers not supportedmight work,it just means we won't be putting any effort in getting it to work on thatbrowser.

  • Chrome 50+
  • Firefox 45+
  • Edge 14+
  • Internet Explorer 11
  • Safari 10+
  • iOS 9.3+
  • Android 4.4+
  • Opera 42+

Building

To build this software, assuming you possess all dependencies, then all you needto do is execute the following command from the source code root:

make

Yep, that's seriously all there is to it. Unless you don't have all of thedependencies, then look over the build dependencies list.

  • GNU make
    • Build system
    • Website
    • OSX: install Xcode
    • Debian:sudo apt-get install make
  • FindUtils
    • The commandfind andxargs among others (used for preparing the source code)
    • Website
    • OSX: included by default
    • Debian: included by default
  • Rename (util-linux)
    • The commandrename (also used for preparing the source code)
    • Git Repo
    • OSX:brew install rename
    • Debian: included by default
  • Sass
  • Webpack
  • Babel
  • Babel Loader
    • Babel loader for Webpack
    • GitHub
    • npm install
  • Babel Env Preset
    • Our chosen preset for Babel (don't install this globally, it doesn't work that way)
    • GitHub
    • npm install
  • Google Closure Compiler (asclosure-compiler, use symlink if different)
    • JavaScript minifier and optimizer
    • Website
    • GitHub
    • OSX:brew install closure-compiler
    • Debian:sudo apt-get install closure-compiler
  • Yahoo! YUI Compressor (asyuicompressor, use symlink if different)
    • CSS minifier and optimizer
    • Website
    • GitHub
    • OSX:brew install yuicompressor
    • Debian:sudo apt-get install yui-compressor; sudo ln -s $(which yui-compressor) /usr/local/bin/yuicompressor

Also note that if you're missinggem ornpm (and therefore, probablydon't have Sass or Browserify), then you'll need to get those as well.

  • Ruby (and Gem Package Manager)
    • Needed for installing and running Ruby Gems (like Sass).
    • Website
    • GitHub
    • OSX: Comes pre-installed, orbrew install ruby
    • Debian:sudo apt-get install ruby
  • Node.JS (and Node Package Manager)
    • Needed for installing and running Node packages (like Browserify).
    • Website
    • GitHub
    • OSX:brew install node
    • Debian:sudo apt-get install nodejs

And last but not least, if you're on OSX andbrew commands aren't working,then you need to download HomeBrew fromhere.

Additionally, if you're on any non-debian-based distro, you can probably changethe commands fromapt-get install toyum install orpacman -S,and if not, hopefully you're a resourceful linux user, and you can figure it outsomehow.

If you're on windows, there's probably a way to do it, and some Google-fu canhelp you with that. You might be better off building it in a linux virtualmachine, though, so don't rule that out.

Publishing

The build system (makefile) also includes some methods for publishing the codeonline. For this, you have three targets:

  • make publish-all (publishes to development and production sites)
  • make publish (publishes to production site only)
  • make publish-dev (publishes to development site only)

The publishing functionality of the build system has one dependency (beside GNUmake, see above for info on that).

  • rsync
    • Needed for remote synchronization over SFTP (all publish targets).
    • Website
    • Git
    • OSX: Comes pre-installed, orbrew install rsync
    • Debian:sudo apt-get install rsync

Before you are able to publish to anything, you have to define targets asenvironment variables. By default, it will do nothing at all. You need to definea couple of target variables. These targets can be a location on your own filesystem, or it can be any remote protocol that rsync supports (like SSH).

  • ld39_remote_production is the environment variable for the production remote.
    • export ld39_remote_production=user@domain.tld:path/to/hosting
  • ld39_remote_development is the environment variable for the development remote
    • export ld39_remote_development=user@domain.tld:path/to/hosting

Dependencies

If you want to deal with the composer or bower dependencies, which may benecessary for certain development operations (namely updating them or adding newones), you will need the following in addition to all of these. Note that notall of the dependencies are being managed with these tools, and as such, somedependency updates may require manual updating.

  • Composer
    • PHP dependency/package manager.
    • Website
    • GitHub
    • OSX:brew install composer
    • Debiansudo apt-get install composer
  • Bower
    • Client-side JavaScript dependency/package manager.
    • Website
    • GitHub
    • npm install -g bower

Hosting Requirements

Just a webserver that can serve static files. That can be anything you want. Itprobably won't work if you open the files locally though, because of browsersecurity standards.

About

Blackout - My project for Ludum Dare 39 (did not finish on time).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp