Pages

Tuesday, December 30, 2014



Look in to that determined glance. A being, determined to survive and do anything to survive. 

Lion is not trying to be a lion, the majestic king of nature, the ultimate predator it is. It simply is. It is his nature, and there is no other way that he can be.

To be a warrior.

There are no choices - to be the strongest predator, or not. He is, or he is not a lion. Or he is not alive. The only struggle that forces you to become something better - the struggle to survive.

Thursday, December 25, 2014

A simpler way to encode passwords with grails

Hi! I've discovered that a password can be encrypted much easier, and without any additional plugins! Probably the encryption will not be so strong as with the jasypt plugin, but is much easier to implement.


The authentication method:


  def encryptedPassword = params.password.bytes.encodeBase64().toString()
def user = User.findByLoginAndPassword(params.login, encryptedPassword)

The register method:

def encryptedPassword = params.password.bytes.encodeBase64().toString()
def user = new User(login:params.login, password:encryptedPassword)
user.save()

All this encrypts the password at once when you enter it. Persists new user with the encrypted string to the DB, and when logging in it encrypts the entered password and then compares to the persisted string in your DB


Update: this is encoding, not encrypting:
Encoding transforms data into another format using a scheme that is publicly available so that it can easily be reversed.
Encryption transforms data into another format in such a way that only specific individual(s) can reverse the transformation.

Probably there are some uses for this stuff, but certainly not for security.

Thursday, December 11, 2014

grails jasypt field encryption - encrypt database entries

Hi! One cool plugin i came across recently - jasypt-encryption plugin. Using it you can easily implement automatic encryption and decryption of fields to your database. This will protect data in your database. But not in your application, because in your app the data is unencrypted, it is encrypted only in the DB.

First of all, check this repository for a wiki and some code examples: https://github.com/dtanner/grails-jasypt

Installation is very easy:

1)In BuildConfig.groovy (for hibernate4 you need jasypt 1.3.1, for hibernate 3 you need jasypt 1.2.1):

plugins {
compile ":jasypt-encryption:1.3.1"
runtime ":hibernate4:4.3.5.5" 
}



2)in Config.groovy:


jasypt {
    algorithm = "PBEWITHSHA256AND256BITAES-CBC-BC"
    providerName = "BC"
    password = "test"
    keyObtentionIterations = 1000

}

3)And in the domain object you will use encryption, add import and mapping:


 import com.bloomhealthco.jasypt.GormEncryptedStringType
String password
static mapping = {
password type: GormEncryptedStringType
}

Not when the user is persisted, the password field is automatically encrypted, and decrypted when fetched from DB.

So, this is a way to add some security to your database. But if you need encryption for, example, protecting passwords, then you better not use jasypt, but use spring security.

Jasypt encrypts and persists data, and when you fetch data from the DB it is automatically decrypted, so, for example, in an authentication algorithm you compare unencrypted passwords, and the password fetched from DB exists in an unencrypted state in your application.

While with spring security plugin the encryption is one-way: the password is encrypted and persisted, and when user logins, the password is encrypted, and the encrypted string is compared to the persisted one from earlier.

Sunday, November 23, 2014

Grails and XAMPP MySQL database configuration or any external DB

Not much happening lately. End of the year, have to study a little bit not to get kicked out.

SUBJ: as usually, couldnt find an easy tutorial, so im making one.


  1.  Install XAMPP, launch it. 
  2.  Check the mysql config > my.ini. Remember the user, password and port.
  3. In your grails BuildConfig.groovy add this line:

    dependencies {

    ...

    runtime 'mysql:mysql-connector-java:5.1.34'

    ...

    }

    ...
  4. In your DataSource.groovy comment the defaule values and add your own:
    pooled = true
    driverClassName = "com.mysql.jdbc.Driver"
    username = "username from the config file"
    password = "password from the config file"
  5. There are the environment specific settings. The dbCreate = 'create' means that a new DB is created each time you run the app. Change it to 'update' and the DB will be persisted and updated each time.

         url = "jdbc:mysql://localhost:PORT_FROM_CONFIG_FILE_HERE/dev_db"

    Change the url to the DB schema. Not that you have to create it first in your DB. (I used MySQL workbench to connect to a running XAMPP DB, and created a schema)
  6. Basically that is it, now your app in development mode (or the mode you edited in the environment settings) will use the database you specified. Just remember that you must start the Apache too in XAMPP. 
  7. Oh, and you possibly need to grant permission for the user you defined, it is done through XAMPP mysql admin button.

Monday, November 3, 2014

Finally released my first game!



Much learned during development. If i would start now i would do so much things differently. Firstly - i would plan everything more thoroughly. The most important thing to plan would be the classes and relations, the architecture.

Also during development i played much similar games to mine, and now i would concentrate on a simplier control scheme. Some people have trouble getting the current controls. Which are: tap left part of screen for a small jump, tap right part of the screen for a bigger jump, and tap in jump for a double jump. Still some people prefer smashing their palm on the screen.

A disappointment was that my country isnt supported by google merchant, so i cant sell my app or offer in app purchases. So i turned to ads and a cool survey system that offers double jumps for completing short surveys - Pollfish.

Also one thing learned that game development consists of drawing graphics, that i dont like to do. I just want to code, code, code.

Pollfish integration with Libgdx and reward system.

So, to make pollfish showing in your app is very easy. Even with libgdx, you just make some changes to your androidlauncher.java , like that below.

Recently there was an official guide for libgdx posted, be sure to check it first -> https://github.com/libgdx/libgdx/wiki/Pollfish-in-libgdx

First of all, follow the official guide -> https://www.pollfish.com/android

1)Register  and get your developer id key.

2)Add the pollfish sdk as instructed in the guide

3)Add pollfish init method to the onResume method of androidlauncher:

  protected void onResume() {
super.onResume();
PollFish.init(this, "your id here", Position.TOP_RIGHT, 5);
}

4)Make your AndroidLauncher class implement PollfishSurveyCompletedListener

and add such a method:

@Override
public void onPollfishSurveyCompleted(boolean arg0, int arg1) {
main.surveyCompleted();
}

My libgdx main class has a method surveyCompleted that adds 15 double jumps and saves preferences.

Change the main class initialiation in onCreate, so that you can use main reference in other methods


main = new Main();

initialize(main, config);

Now your app will show pollfish icon when a survey is available, and a surveyCompleted() method will be executed when user completes a survey.

I also tried to make the pollfish icon hide during gameplay using PollFish.hide() method, but seems to me that there are some problems with libgdx, as it steals focus from the Android activity, my hide method call didnt hide the icon. If you implemented successfully the hide method in your libgdx game, post in comments!


Monday, October 20, 2014

Libgdx and StartApp integration. Exit wall.

Hi! Couldnt find an understandable guide of how to integrate StartApp ads into an libgdx project, so i will share what i found.

First of all you need to register at their website  and download their sdk. The StartAppInApp-2.4.6.jar. And add it to the android project of your game - just drag or copy/paste the file in the "libs" folder. Also register your app.

Then just follow this guide StartApp github

1)Add permissions and two activities to androidmanifest
2)Add code to your androidlauncher:

  • declare private StartAppAd startAppAd = new StartAppAd(this);
  • in onCreate method StartAppSDK.init(this, "your id", "app id", true); 
  • and add onResume, onPause, onBackPressed methods as in the guide. 
Now your app will show app wall on exit. 

Sunday, October 19, 2014

Groovy/Grails - future of web development

If you are a Java developer, like me, you should learn about Groovy/Grails. Grails is a web framework for the Groovy language, that is based on Java. Its like Ruby on Rails, but much easier for Java developers to get into.

I foresee that it will overtake Java. It should.

Super motivated. Who is Elon Musk?


If you havent read Ayn Rand's "Atlas Shrugged" i insist you do. Who is John Galt? This week i understood who is John Galt in real life - its Elon Musk.

Amazing person, yet so straightforward.

He wants to change the world and he does it. Redefine an industry, competing with huge corporations? Easy game.

Actually two industries. Actually three industries.

Actually the whole future of humanity, with his visionary SpaceX company, that will turn humanity in to an interplanetary species. Oh, he will. If he cant do it, than nobody can.

Very inspiring!

First game published!

I learned and understood a lot during the development time. Mostly that i wont be making games for profit, just for fun time from time. That i dont like to polish the game too much. The most enjoyable part for me is the creation of a new gameplay. I really suck at drawing graphics (as you will see from the game :P ) and have no intention to learn to draw.

Hobby mobile game development surely can be profitable, but profit caps are around 1-2k eur/month (If talking about 2 hrs per day development after work).

Among developers who shared experience with me there were some who made 10+ apps per several years and were making ~500 per month, and a few those made 1-2 apps per several years and were making at least twice as much than the first group. Just an observation.

Biggest insight was that developing a game i am not solving any problems, thus not creating so much value as i would by solving an problem. I mean like real world problems, that yet lack a solution, or simply lack a better solution.

I really liked the framework i was working with - libgdx, very intuitive and simple.

I have just published the game to Google Play, and it said that it will take some time to be indexed and available through search.


Monday, October 13, 2014

Story of my first game in a picture

Just draw this;


Back to initial plan, WebDev, Grails.

I understood that i wandered off my initially set course. The idea was to make lost of games and have fun doing so. Not more that 1-2 month per game.

When there is a huge todo list of things im not excited about, like redrawing graphics, adding features that should be there, but i am not actually interested in them - it saps my motivation! And, remembering the initial plan, i've decided to publish the current game asap. I will remove all unimplemented to the end features, and publish the game to GP. I even stopped caring about not being able to get money from GooglePlay because my country is not supported by Google Checkout. Flappy Bird didnt have IAP.

This also is a result of a little motivation and goal shift after reading some books on setting goals and overthinking some of my personal goals and motivations.

I still will make games, but i will divide my dedication between fast-prototyping interesting games, not polishing them until the end, and some startup stuff. Currently it consists of learning Grails web framework (my last months research shows that its the best, and should overtake the market in the future).

GameDev is fun, but i dont see GameDev making any impact on the world, in terms of making it a better place.

Saturday, October 4, 2014

Simple pixel art animations using Graphics Gale

Hi! One of the recent problems - complete lack of digital drawing experience. I decided to stick with simple pixel art graphics. Research showed that Graphics Gale is one of the best software to use. So far this is what i made:

Wednesday, October 1, 2014

Country not supported by Google Checkout or Google Wallet

Hi! So, some time ago, I've learned that my country is not supported by these two services. I am serious about developing software for android, i want to use in-app purchases, i need those services.

What I learned from researching this topic is that the easiest way to deal with this is to get a bank account in a supported country and register your Google Merchant with that account.

Other option was using somebody's else account, but if your intentions are serious, that is not an option.

I haven't looked into this further, but with a quick search i didn't find an easy way to open such an account. The cheapest way i encountered was making sure that at least £500 go through your account monthly. If you are planning to use it only for your in-app purchases, there is no guarantee of that.

Should investigate further. Perhaps it is possible to use a Skrill account instead of a bank account?

Sunday, September 28, 2014

Back to work!

I cant understand the reason, but for some past days i was lacking motivation, not only to do my game, but for everything else too. Probably its the weather.

Anyway, im back on track! Added some features to my game, including the double jump. Also added highscores, store and instruction screens, but they are empty for now:



Now everything else i want to implement requires application published to Google Play, so i can use those services like storing data on Google servers, logging in with Facebook and sharing score etc.

Only thing left before that is to remake graphics. This is a completely new thing to me, and thats why it will be so much interesting! :)

About deadlines - probably everything is possible to be made until end of October, but im not so strict about deadlines anymore, because i cant plan/assume terms/dates correctly, because there is yet so much to learn during the process of making a game.

Friday, September 12, 2014

Monetization and marketing research

Hi! Last few days i was researching about monetization, ad networks, marketing, in-app purchases (IAP) etc. And i will continue. Already learned a lot, have some game-changing ideas.

As currently im working on my first game, looks like it will be a learning ground also for me - i will try to implement all the stuff i learn.

What i have in mind:

  • use TapJoy, implement some sort of currency, that user can use to get consumables/permanent boosts.
  • must implement IAP
  • coins/items for inviting friends, for sharing scores, etc. 
Huge potential in this stuff. Only question - doesnt this violate GP ToS? How the user will react? 

So much to research yet. Also case studies of the top grossing games must be done. I feel like im discovering a whole new world, besides the one that consists of writing code. 

Monday, September 8, 2014

Final prototype

Hi! Finished everything that was planned for the prototype!

update 9.9.2014:
-three different backgrounds, chosen randomly
-added parallax background
-instructions as a picture, not text
-fixed some bugs (jump sound playing twice)
-added all animations
-added all sounds
-start screen now shows your previous score

Now there will not be anymore updates until i publish in to Google Play. Planned changes are:
-remake all graphics
-share score button
-global highscores
-call to rate
-implement a store with a double jump
-ads
-professional company logo and game icon


DOWNLOAD:

September so far - working like a maniac!


Its unbelievable, knowing myself, to stay so motivated and focused for such a long time, being super productive! I'm in love with such a workflow. Managing to study full time, work full time, do sports few times a week and doing so much on my hobby project. This is the only way i wish to exist.

Sunday, August 31, 2014

First prototype!

Hi guys!! :))

I finished my first game prototype! You control a dog that runs and jumps over pits! Tap right side of the screen for a big jump, and left side of the screen for a smaller jump.


I haven't thought of a name yet.

Its a prototype. I plan to remake all graphics, probably will hire an artist. Will add animations for falling, jumping and standing (at the start screen), also sounds and a nice background is planned.

Please share your thoughts!
DOWNLOAD:

Wednesday, August 27, 2014

Libgdx supporting different screensizes

I finally fixed the density problem! I should have read the docs and libgdx wiki more careful, that would have saved me 3 days! The fix was pretty easy. There was no need in making several copies of each image in different resolutions, not even setting any coordinate to relative instead of absolute. Libgdx is a game engine, a framework, where most common problems have easy intuitive solutions.

I ended up adding just a few lines of code instead ~50+ of my noob-solution code. In the create method:

        viewport = new StretchViewport(480, 800, camera);

The StretchViewport stretches viewport to screen. You can use other ones (check libgdx wiki), so that you don't stretch, but show black borders on the sides of screen. But my game is locked in portrait mode, so there will probably be almost no difference in aspect ratios on different devices. 

and the resize method:

        @Override
public void resize(int width, int height) {
viewport.update(width, height);
}

The game now looks exactly the same on 480x800 and 1080x1920 screens. Just need to add Linear filter to images so they dont look too pixelated. In my case i added the filter to my assets.pack after TexturePacker.

Monday, August 25, 2014

Deadlines are important!

One, especially a hobby game developer, should set deadlines for himself. Without setting goals and deadlines for them I tend to procrastinate to much. So i'm setting the first real important goal and a deadline : to release my first game for public playtest on 31 august, or earlier. There is another goal and deadline list - the technical one, with fixes/features etc. To release to public i have to put around 10 checkmarks:


Thursday, August 21, 2014

First game prototype almost done! One problem to solve... different densities

 

So there it is. You can see a device with 480x800 resolution on the left and a device with 1080x1920 on the right. This is wrong for sure. Problem is that when making an native android application there are folders for different screen densities and the app chooses assets depending on screen densities/sizes. There is another way in libgdx to deal with it, but im not familiar with it yet. Probably you need to load several sizes of one image and switch between them depending on screen size. That is really easy to implement using the Gdx.graphics.getHeight() and choosing different images to load depending on the value returned from that method, but i better learn about the ready solution first. There are some probable pitfalls concerning image coordinates if they are of a different size. Probably this can be solved by not using actual pixel coordinates, but using instead proportions of the screen, like Gdx.graphics.getHeight()/10 etc.

Wednesday, August 20, 2014

So many ideas!

I have so many ideas about completely new gameplay concepts never seen before! Each of them can be realized into a potential hit game. But as i have learned in my life ideas mean nothing without realisation.

You can have mediocre ideas and be very good at realizing thus creating a lot of value. And you can have amazing ideas but be very bad at realizing them, resulting in zero to none value at all.

Concerning realization there are two major pitfalls that i see now:
1) Actually having the motivation to start and complete the development of the game. There is an idea that an average Google Play developer publishes around 10 games before they are somewhat profitable. So, it looks like a bad idea to target profits - they can take some time to come. The best thing is to target quality and value of your products, as those two aspects are immediate - you create them yourself, and can fully control them. And profit will be just a side-effect of quality.
2) Balancing a game so that it is hard enough to provide frustrating challenge, but not so hard that it is unplayable. This is a thin line, that needs a lot of effort put in to find.(As i understand on my current level)

If the first pitfall just needs discipline and determination, with the second one you probably need to be gifted in a certain way. Take for example Flappy Bird. Put the pipes 5 pixels closer and the game becomes unplayable. Put them 5 pixels further from each other and the games becomes easier.

Tuesday, August 19, 2014

libgdx: making camera follow player

So, i had this problem. Looked everywhere and couldn't find a decent tutorial, actually any info, so here it is:

In class:
OrthographicCamera camera;
in constructor:
camera = new OrthographicCamera(Width, Height);
camera.setToOrtho(false);
in render method:
camera.position.set(player.x, player.y);
camera.update();
batch.setProjectionMatrix(camera.combined);
The last line is what was missing from all those tutorials, and the single line that makes the difference.

Monday, August 18, 2014

My first game prototype half done!

Hey! I think by the end of this week i should finish a playable version of my first game. I mean that all will work. What needs polishing - graphics, they need to be VERY GOOD. Surely i will hire a professional to make an game icon for launcher, but with ingame graphics im not sure yet. Draw them myself or use outsource? Or look for a artist-partner. I really dont want to share, so the latter option is not for me :D. Pros for outsourcing are the time conservation and professional result. I guess some $50-$100 investments in professional graphics for a small game are more than justified.

Following my Game Life Cycle model i still have plenty of time, because i started work on this game a week ago. Actually, the development time with small games could even be less than 25 days, but i wont rush this, as i want quality. Really quality games!

This game will be similar to flappy bird, but the player will run and jump over pits. I am concerned about game being too easy and not having any challenge, is that a plus or not i will see later. As i am not targeting hardcore gamers this might be a good side. When my game will be finished i will first post it to different forums like java-gaming.org etc and ask about improving gameplay.

Perhaps i will also publish it with my own graphics, and hire a professional from the earnings to redraw everything.

Currently i have all implemented except:
-randomly generated ground, that ceases to exist when it will not be seen anymore, and is generated a second before it appears on the screen. I already thought of a way to to this.
-camera to follow player's x coordinate. Dont want it to wiggle up and down when player jumps.
-play button that unpauses the game
-minor fix to collision detection

Anyway, i am stating that i set a deadline to 24 of august 2014 to finish the playable game prototype.

Friday, August 15, 2014

Motivation: Friend on cover of local Forbes, general thoughts on success

A huge motivation boost i have received when saw this. This guy i was in school in one class with, and still is my close friend. Known is that he is successful and earns good, but such proof like this revitalizes the understanding of it.

Reading his, and many other super-successful people stories, i constantly stumble on one similar phase in their lives : the one were they struggled to survive, or had some similar problems. These problems forced them to evolve, forced their ideology to evolve, their mental state, and everything else. Forced to evolve beyond mediocre level. And tougher were the obstacles in their lives that they overcame, the further they have evolved. Far beyond that state of a average man. I didn't use the term "normal", because what is normal? Is it normal to grow old in poverty? That is average, but not normal. Poverty is when lack of money restricts you in any way.

And what makes us want to change? Not accepting the things how they are now. If you accept your condition, you will never change.

Life presented them with a challenge, and they had two choices: evolve and strive, or brake. The ones, that didn't brake, come out of this phase as different beings, with tempered willpower and a sharpened mind.

And it is so much different from just average self-development. Like reading certain books, attending seminars, thinking proactive and all that ARTIFICIAL stuff. There is no challenge in reading a book about self-development. You can come in your warm house, read it or not read it. No difference, almost. But when you are in front of a deadline - evolve or die - then you have no choice than to evolve, and ASAP. Exactly this difference makes the difference.

As a logic-driven mind, my questions: how can i create such a phase in my life? Is it even possible to artificially create such conditions? And would it be safe? And i think - yes, it is possible, and no, it wont be safe. Chasing a radical changes in your life you cant expect for them to happen smoothly, with minimal impact. But it is sure worth it.

For a rough example - just go to another country on the other side of Earth, with no belongings and start all over. Either you will die of starvation or something like that, or in some years you will return a completely different person than you were. Much more independent, much more tenacious, much more proactive. Then, just for laughs, compare yourself after this to yourself that stayed at home for all these years.

Game Lifecycle Model


So, there i was, thinking about my game lifecycle model and drawing this:

This would be a perfect cycle as i see now, releasing a game every month. At first, the development time might be longer, as i am still learning libgdx. Then, i should concentrate only on important stuff. 25 days should me more than enough to create a simple quality game. Keep in mind that Flappy Bird was created in 3 evenings after work, thats the type of games i will be concentrating on : simple, easy, fun casual games.

P.S. this is for a hobby-like project, with time spent after work at evenings! 

Managing time and your hobby game development projects

Just copying from stackoverflow, useful info.

These tips apply to any hobby software project, and not just games.
  • Set tiny milestones. Having a goal like "item system works in my RPG game" is all well and good, but that implies a whole lot of under-specified functionality that you probably didn't even know you needed. What about "graphics environment set up"? Or, "A sprite is displayed on the screen."
  • Do a little bit each day. Marathon sessions are great and all, but you're trying to squeeze a long-term commitment into an already crowded life. If you do a little bit each day you are making measurable progress and establishing a structure within which you can achieve your milestones.
  • Scale yourself back. Whatever your grand vision is, try and figure out what the smallest achievable portion is and do that. Making an RPG? Start with one quest and no NPCs. Making a platformer? Start with one level and no enemies.
  • Prototype early. Before you sink a bunch of your hard-earned hobby hours into a game, figure out if it'd be fun first. There's nothing so dispiriting as working your ass off on something for dozens of hours only to find that the basic concept sucks.
  • Develop something iterable. My favorite hobby software projects are the ones where the basic concept allows for later tinkering. Is your game like that? Can you ship something and then revisit it later and add cool stuff?
  • Don't build an engine or a framework. You don't want an engine, you want a game. Don't worry about the framework-y, reusable bits until after your game is shipping. Once you start on the second game, then you can go back to your first and see if there's anything you could bring over. That's not to say that you shouldn't use sound software development praxis, but don't start by writing a Sprite class until you know what you need your sprites to do -- you'd be surprised how little it'll turn out to be. Start with a Hero class, then a Monster class, and then -- oh look! -- there's some common stuff!
  • Shipping is a feature. You're never going to finish your game, you're only going to abandon it. ( = What is the minimum amount you can do before you're not completely embarrassed to show your game to someone else? Chances are, you can do less than that and still have a game to be proud of.

Thursday, August 14, 2014

Motivation: Top Mobile Game Developers

While still having some doubts about my choice i was looking for some facts/motivation. Can i do it? Can i become a profiting game developer? Or is it a lost cause and i should think of something else?

Looking for answers to these questions i stumbled on an article about the 9 top mobile game developers. The last of them makes $100 000 000 per year! There are some who make $1 000 000 000. source

Numbers are astonishing. I think one could surely count on $100 000 per year. I mean a game development company, consisting of professionals. Not a single developer.

Why numbers are important? Because awesome games have huge budgets. You cant create an awesome brain-blowing game with no or small budget. You need a team of professional developers, designers, artists, etc. They need salary. Nobody will work for free, or for a percentage of future income.

So, the target now becomes to found a game development company. For that i need:
1) money
2) experience

Money earned from games, and experience how to make money with games. No point of hiring people and telling them to write games if you have no idea how to make this process profitable. I have to live through the lifecycle of a game. Will draw some visual later to represent my perception of this part.

When i will feel comfortable with this lifecycle model, and my games will be making profits, then will be the time to think about hiring somebody to speed up my work.

Thursday, August 7, 2014

Copying a popular game

Hi! I want to share my thoughts on one of a possible way of making money with games. For example take flappy bird and its clones. As we know, the creator of flappy bird earned around 50k usd per day on ads. I've read somewhere that his monetization strategy was very poor, his banner placement was in the worst possible place, a lot of opportunities to squeeze more value out of the game were missed. So what i can think, that with proper monetization he could have been earning atleast twice that he did. Aleast.
And there was information that flappy bird clones, specially designed to make money, were making much more.
So, one of the paths that a game developer can take is to clone successful games and monetize the shit out of them. Probably with proper marketing, when some of the income of the game is spent on advertising the game, such a game could overtake the original game in popularity.
An interesting material to read next would be this question on stackoverflow: How closely can a game resemble another game without legal problems?
Looks like that game mechanics cannot be copyrighted. That means that you could do everything exactly like the original game, just use your own art/sounds.
Imagine cloning flappy bird, and implementing correctly placed ads, interstitial ads, exit ad-wall, in-game purchases and something more, instead of just one (!!) tiny banner.
Anyway, im keeping an eye on the next flappy bird.

About gameplay vs graphics

Hi! I've been thinking about this topic for some time. Now im 26, and i remember the awesome drive and emotions from playing games on my dandy console. Those games now seem to me the pure game experience there was. Now, considering their graphics, there could be only one explanation : gameplay.

I feel like today's games are so much centered on making profit, that they ditch the gameplay design process in favor of game implementation - fancy graphics, sounds. But what is a good implementation without proper design? Games are meant to be enjoyed not because of their stunning graphics, but because of the gameplay.

Thinking of games that were very successful, like for example Minecraft. Graphics is as simple as it could be. The game is all about interesting gameplay, new concepts.