Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 286 287 [288] 289 290 ... 796

Author Topic: if self.isCoder(): post() #Programming Thread  (Read 882530 times)

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: if self.isCoder(): post() #Programming Thread
« Reply #4305 on: April 08, 2013, 01:22:55 am »

Woo!

Actual islands at 2 different zoom levels.

Spoiler: "small image" (click to show/hide)

Spoiler: "large image" (click to show/hide)

I think I need to find a way to make the islands a little more varied in shape...
Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.

MorleyDev

  • Bay Watcher
  • "It is not enough for it to just work."
    • View Profile
    • MorleyDev
Re: if self.isCoder(): post() #Programming Thread
« Reply #4306 on: April 08, 2013, 03:57:48 pm »

In an attempt to give my blog more content, I've decided to try occasionally posting "short thought on", which are just a few paragraphs instead of fully thought out articles, as a way to fill the silence.

My first is: Short Thought On Test Driven Development: Failing To Encapsulate
Quote
It’s often said that a downside of Test Driven Development is it often forces you to expose information related to a class that would of been private if written without Test Driven Development. I wish to provide some food for thought and to tell you this is not true. In fact, if you feel you are being forced to compromise design for testing, it is not the fault of the testing.

Yes, I am telling you that if you are doing this, you are doing it wrong. Having to expose internals for testing is a clear code smell, and a potent one at that. The solution is, instead, to stop and think. Why is the structure of the code forcing you to make this decision? Why are the responsibilities of this class so encompassing that I cannot tell what it is doing as an outside observer? What have I done wrong?

Exposing internals for testing is a code smell, and in a lot of those situations dependency injection is the detergent. If a classes responsibilities are too big (which is fundamentally what this code smell suggests), then breaking those responsibilities down is the most responsible thing the programmer can do.
Logged

Markus

  • Bay Watcher
  • [Alignment:Lawful Bacon]
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #4307 on: April 08, 2013, 05:08:27 pm »

I have a few questions related to the OUYA and game making in general. I've little idea where else I can put this.

First of all, I've seen the OUYA's specs. But I have little ability to visualize how much I'm able to do with what is there.

For instance, would I be able to do a light bullet-spam game without much slowdown? Something along the lines of the Siter Skain games Reflex, Kamui, and Alltynex Second. (Though not so much the last one-I have more experience with sprites than with models.)

Kamui : (Stage 1+2) http://www.youtube.com/watch?v=mpOr5VZQTSk (Stage 4) http://www.youtube.com/watch?v=MBWcRe7-lOg

Reflex : (Stage 1) http://www.youtube.com/watch?v=1IwvbEyj6Bg (Stage 6) http://www.youtube.com/watch?v=QOptU7ekEAA

I assume such a game is going to produce the most slow down out of my two current concepts.

Now, the second idea is a grid based SRPG, not unlike Fire Emblem or Megan Tensei. (I think that's how it's said.)

Since I doubt a sprite-centered TBS would take up too much processing power visually, I am instead more concerned about stat and attack calculations alongside dealing with AI on open-ended victory-defeat maps.

Note:I post multiple instances of the Siter Skain game to show how it starts off relatively tame compared to the latergame. I'm not envisioning a Tohou-esque monstrosity of colors. . . 
Logged

MagmaMcFry

  • Bay Watcher
  • [EXISTS]
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #4308 on: April 08, 2013, 06:56:38 pm »

You do realize that both gameplay ideas you're describing here already ran on the NES? I doubt that you could even come close to the limits of the Ouya, unless you seriously mess something up.
Logged

GlyphGryph

  • Bay Watcher
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #4309 on: April 08, 2013, 07:13:38 pm »

On the other hand, a decent TBS could easily burn a ton more cycles than that and result in in slow enemy turns. Chess is a TBS, after all, and one where you only have to make one move, and look how many cycles a computer can burn processing that!
Logged

Markus

  • Bay Watcher
  • [Alignment:Lawful Bacon]
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #4310 on: April 08, 2013, 07:43:10 pm »

You do realize that both gameplay ideas you're describing here already ran on the NES? I doubt that you could even come close to the limits of the Ouya, unless you seriously mess something up.
I had tried Fire Emblem for the NES.

I mostly came to ask because I wanted a visual representation of the Ouya's capability-for some reason, despite being primarily a reading-type learner, I cannot for the life of me get hardware and software information, be it programming wise or system wise, into my head without a visual representation. I know nothing of the Android OS-I still don't have a smart phone, instead having a small, robust flip phone which is not even capable of Picture mail display.

The only three computers I have ever had were a hand-me down pre-1980 computer unable to run Worms:World party without lag, even on the low settings; a 2004 Office computer with an aging video card given to me in 2008 from someone , leaving me to early web games and indie games (Though perfectly functional for any research or writing I cared to do, which I was thankful for.); and much more recently, a well-off relative decided to spoil me with a High-Spec gaming oriented Alien Ware computer. (I still use it for work as well.)

Simply put, Hardware Specs are lost on me. A rather painful weakness.
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #4311 on: April 08, 2013, 07:51:53 pm »

On the other hand, a decent TBS could easily burn a ton more cycles than that and result in in slow enemy turns. Chess is a TBS, after all, and one where you only have to make one move, and look how many cycles a computer can burn processing that!

Yeah, but chess is a game with one-hit kills and special movement. TBSs without those things probably won't require as much processing power for AI.

MagmaMcFry

  • Bay Watcher
  • [EXISTS]
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #4312 on: April 08, 2013, 08:13:55 pm »

So first of all, bullet hells use very, very little CPU. I'd imagine that Ouya could run bullet hells with at least 200,000 bullets. If you need a visual representation of that, 200,000 is the amount of oranges you would need to cover 10 tennis courts. TBS, on the other hand, can be arbitrarily CPU-intensive because of AI, although the AI is virtually the only thing that needs all that processing power. Of course, the amount of stuff your AI can do with that power is entirely dependent on your AI programming skills, and you need some really powerful AI-fu to make your AI use area tactics (which is fucking useful in most battle-style TBS, except for chess).
Logged

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: if self.isCoder(): post() #Programming Thread
« Reply #4313 on: April 08, 2013, 10:54:50 pm »

This algorithm defaults to "deep water" vs  "abyssally deep water" as the most common seed value. Deep water is shallow enough that some islands do occasionally form, and the less frequent abyss makes those steep smooth hills falling into the sea much less common.

Spoiler (click to show/hide)

What i don't like.

*vertical  and horizontal rows of features occur commonly because the seed values sometimes line up like that.
*round islands are still the most common type.
* I get islands overlapping the edge of the map.

There are just so many ways to fiddle with it, I need to not get stuck in that trap. So, tonight I am going to try and color filter the output.
Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.

Mephisto

  • Bay Watcher
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #4314 on: April 08, 2013, 11:23:53 pm »

As of a month ago, I have a job as a Django dev. What that means is that I can tell people I'm a Python programmer but most of my time is actually spent with HTML, CSS, and Javascript.

For the past week, I've been in the mood for some form of massively online game but I couldn't find one that my PC and I both agreed on. Then I remembered what my job is. Then I checked B12 and noticed the Aurora thread in my "Unread Replies" list. Then I screwed around on YouTube for an hour or two.

But after that hour or two of screwing around, I realized that creating a multiplayer game a la Aurora would be feasible using Django. The only problem is that I have around six hours personal time outside of work/sleep, which has to be split between eating, household chores, and spending time with the fiancee, and I rarely feel like touching a text editor after a day of hacking Javascript into shape. I guess I now have something to do on the weekends.

I'm going to file this under "I have another idea but not the time to act on it right now". If anyone wants to discuss what would be desired in such a game or anything related to it, feel free. If I get enough interest and enough free time to make something usable, I may put up a project wiki and some dedicated hosting.
Logged

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: if self.isCoder(): post() #Programming Thread
« Reply #4315 on: April 09, 2013, 12:06:11 am »

Nadaka: All yer images are broken :<
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: if self.isCoder(): post() #Programming Thread
« Reply #4316 on: April 09, 2013, 12:19:59 am »

Broken? Are you using an old IE?

These are 16bit grey-scale PNG's.  They show up fine in firefox, chrome and opera and ie 9.

This was was converted to a jpg when I uploaded it to facebook, should be visible, if somewhat smaller and with lossy compression.
Spoiler (click to show/hide)
« Last Edit: April 09, 2013, 12:23:59 am by Nadaka »
Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.

GlyphGryph

  • Bay Watcher
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #4317 on: April 09, 2013, 12:37:08 am »

They work for me.

Though it looks more an ink-blot generator than a random island generator. ;)

You need to add shallow ridge mechanics, and parts of the islands collapsing back into the sea, to get more classic island chains and cool crater islands.
Logged

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: if self.isCoder(): post() #Programming Thread
« Reply #4318 on: April 09, 2013, 01:06:39 am »

Broken? Are you using an old IE?

These are 16bit grey-scale PNG's.  They show up fine in firefox, chrome and opera and ie 9.

This was was converted to a jpg when I uploaded it to facebook, should be visible, if somewhat smaller and with lossy compression.
Spoiler (click to show/hide)
I am using iOS Chrome which is actually a wrapper around iOS Safari afaik.
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: if self.isCoder(): post() #Programming Thread
« Reply #4319 on: April 09, 2013, 02:00:23 am »

Hmm... I dunno, The ipad can't display images over a certain size, so that would cause problems for the high res image. Safari should have PNG support.

Can you see my jpg's?

like this one?



I was having a pain getting color files to write correctly, so I was just sending in some raw int's from the hightmap as data. When I finally got it to write files, I noticed that my islands were blue and my water was yellow, so as a horrible hack, reversed the altitude, and I have a psychedelically textured but semi-colored map.
Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.
Pages: 1 ... 286 287 [288] 289 290 ... 796