The Tequila Den

Combines the world of Tequila with Games.

Tag Archives: bugs

New month, new goals…

I have been working diligently on trying to pump out a 2.0 release of Traders, although it is nearly completion, it just is not quite ready yet. I`m still heavily in the testing phase and cleaning up a lot of the code and to remove any debug/test zones from the game’s core engine.

I’m a bit torn in the decision in whether to fully incorporate knights and the barbarian attack. For the most part I’ve got the knights to work, they can chase the robber away and move up and down trade path. Although the latter still requires a bunch of testing, it works fairly neatly. I have yet to start on the actual barbarian attack, so I believe I’ll be leaving that portion of it out the 2.0 release (unless I get super crazy).

In the coming days I’ll be capping off the knight moving, finalizing it and testing it through and through, and the plan is to add in city walls as the next feature. Once that is completed, I’ll be finishing any other animations/helpers that I’ve been missing/planned to do, then it’s clean up, and boom! 2.0 release!

I popped my head into the theatre to watch the new Star Wars spin off movie and my verdict is that I’m indifferent. Don’t get me wrong, it is a great movie, very well done and I enjoyed it a ton. It tied a few things together and then at the same time it opened up some more stories at the same time. I had a hard time getting past the fact that Harrison Ford was not Han Solo, it was just wasn’t fully convincing it could be the same character. I need to venture off and see it again, but overall it was a good movie.

Advertisements

Never gonna give you up…

Aside from being a catchy song from the late ’80’s, it’s a fairly decent motto to apply to certain situations, one of them being game development and the thirst for improvement. Although, a terrible one if you’re thinking about an ex, then I suggest trying something like “fly like an eagle” or in some instances, “hallelujah” might be a bit more fitting.

That’s an actual screenshot of traders, that is completely generated from the system. It’s also 100% functional.

So what does that mean?

I finished implementing gold mines to the game, so I can knock that one off the list, and head on down to the next one.

updated itinerary:
– Finish re-factoring
– Add more maps (~5)
– Boats
– Gold Mines
– Rolling to see who starts (axed it before 1.0, made it simply random to see who goes first)
–  Bank trade reworking (multiple demands/offers, smarter trades)
– Hot keys/short cuts
– Better number placements (avoid 6’s & 8’s near each other, and like numbers beside each other)

Features on the docket:
– Barbarian attack (Cities & Knights)
– discover-able land & Gain resource
– Cities & Knights play mode
– Columbus Point (Seafarers)
– Fixing numbers (MapMaker)
– Bots (AI)
– Real lobby

I’m going to change speeds a bit and work on adding more maps to the docket and refining the map maker a bit, making it a bit more versatile in some aspects. After adding a few more maps and cleaning the game up a bit, I’m going to work on adding some hot keys/shortcuts to make the games a bit hastier. After such is done, I’ll be re-implementing the roll to see who goes first followed by boats.

Then test…. then test. Then test some more.

Breaking…

First I want to rant off about the misuse of the phrase “Breaking”/”Breaking news” sort of deal. Maybe it is starting to be my old age, but a lot that is reported with this alerting headline is terribly misleading and not at all … breaking. It literally drives me up the wall, usually this occurs on twitter with a certain junior hockey team’s twitter account, it leans me towards the un-follow button, ugh.

Anyways, the real topic at hand, breaking, ha ha. It seems I’ve been doing more ill-will to Traders than actually making bounds of progress. I’m currently re-working the bank trade logic to be a lot smarter and to handle multiple demands from the player. I ended up crippling the system a little bit (I’m a bit rusty), then I coupled that with a few new maps, and of course some of those have pre-placed gold mines, I’m just kicking the game while it’s down. Also made an over sight when the map doesn’t have a desert the player can’t select the robber as technically it’s not on the board, so there’s another boo-boo.

Back to the grind… weeeeeee.

Familiarization….

Its been just about a day and I’ve been going through the code in canasta, trying to determine what I was I thinking in terms of some code changing. I almost abandoned the new additions I’ve made to the code because I think it was going to be a revert of sorts, but instead, it dawned on me, I’m re doing all of this to ensure the AI doesn’t get stuck in a position it can’t do anything, or the wrong/illegal move for that matter, I’m only partially through fixing and cleaning up, haven’t even got to the testing phase of it. In due time.

I know I should of just released it as 1.0A, then went back and fixed it properly for a 1.0B, or 1.1.

Every time I’ve been opening the editor up I’ve been thinking more and more about Mouse and what I want to do, plans for it, and such, then, after I’m doing with a tidbit I’ve been working on, I shut off my computer and start power up the XBOX, or my phone.

Big mistake.

I started playing GTA again since a bunch of friends also have the game and we’ve delved into the world of GTA online, oh my, now that’s a hoot. I absolutely love the idea of open worlds, do what you want kind of game-play. Then you have heists, robberies, businesses, and a bunch of mini games that can be played and land to explore. It’s my idea of a great game.

I also have a great idea of a game in my head, but unfortunately, that’s where it stands. Well, technically I have two, and the other problem with them is that they are not separate entities. They cross paths with each other so much that it’s nearly one giant game, but it can’t be. It wouldn’t make any sense.

The first, the one I mention most often, Mouse, was originally a two person party turn based combat game with close ties to Chrono Trigger and Final Fantasy. I had a large storyboard made out with characters, backgrounds, maps, ideas, places and most importantly, story.

Cue: computer crash.

Roughly 6-7 years ago my computer failed and couldn’t recover my hard drive. I had an older back-up disc I made that had personal stuff on it, some gaming stuff and some applications that were handy at the time. It also included a rough, old copy of my dream in the making. It was demoralizing, it was really hard trying to motivate myself to continue and try and get back to where I was, which was a solid 4-6 months of good progress. So I stopped.

Anyways, idea number two. A lot of mobile games hinge around a couple of common themes now a days, building an empire of some sort, and PVP (player verses player). My initial thought was you logged into a server (which in a sense be a city), and you’d be at home. Generic place in the city, could of been an apartment, nothing really concrete at this point. But the idea was, you’re unemployed, and you’re broke, and you need to get rent money. So each day a paper shows up with a job opportunities and you get to explore the world to try and get a job and make some money. Then your, ‘life’, or such begins.

Unfortunately, the aforementioned is a huge undertaking, not likely something I’d conquer myself, but I had ideas for a smaller, localized scope, which also tragically gets ties with Mouse, and then shit just spit balls down a large hill full of crazy brainstorming.

So, as I squeamishly work through fixing Canasta, I dream, and think about working on Mouse. Soon.

 

Is winter actually over?

Scary to think that winter might actually be over here in Saskatchewan, at least in my neck of the woods. I really hope we’re done with the frosty snow because that means golf season ramps up and camping season is just around the corner. I’m excited to sit on the deck and have a few drinks with friends. I’m also excited to get some summer projects done as well. Crossing my fingers.

In other news, mainly Canasta news, I was planning on releasing the game sometime this week, but in terms of testing and how I want to present the game, it just simply isn’t ready yet. I’m very happy with the direction I’m going, I’m just not overly satisfied with the AI at the moment. I enjoy it, it is a challenge but I think they can be better and there is some behaviours I’d like corrected to make them a bit smarter with their game play. I’ve also managed to weed out a few bugs with my testing, so far (fingers crossed) I haven’t had any debilitating crashes, just some odd occurrences that I do believe I’ve conquered.

As of now, the plan is to release it the end of the month, so stay tuned card fans.

Nearly done!

So I’ve corrected quite a few problems and issues regarding game play lately with regards to Canasta. Added a ton of logic for the computer AI. It’s actually pretty challenging when playing the computer, and I can see their hands! After some immense testing, I’ve only encountered one crippling error that I can’t seem to reproduce. As of now, I seem to be missing something, so I’m continuously investigating.

I’m thinking of releasing the game sometime this month as long as testing goes well. But there is a couple of things I’d like to add before that, but I may hold off. One of them which would alter play a lot would be the tuck feature. Since, when I play the game is a legal play, I think it’s important to incorporate.

The second is changing the way animations are displayed for the east & west team. Currently I use the up-right card images and would like to change them to their horizontal counterparts. I really need to update the functions for animation as well. Tend to have some issues. 😦

Long day of testing…

screenshot 2015.03.16 20.31.11.0326

It’s been tedious task testing a bunch of different scenarios and as many as I can possibly think of. There’s only so much I can truly go through until I need a separate brain to go ahead and think differently, so, with that in mind, I plan on a March 20 release date, so stay tuned & glued to this blog for your opportunity to claim this as your own.

(edit: I put the same date as the publish date as this post, that of course is incorrect, kind of a scatterbrain, the release is planned for March 20th.)

I’m going to spend the rest of the week polishing and omitting debug/testing, and non-vanilla data that will just inflate the file size (although I think it sits under 1 MB in size).

Finally got it…

At least, I think I do. I thought I had it all figured out before hand, but then a bug came out. A nasty little bastard that basically crippled the damn game.

Okay, that’s a bit extreme. The game is fine without it, but the problem was though you wouldn’t be credited with your feat unless you kept building and hopefully it picked the right set, sigh. Yup, longest road issues struck again.

I scoured the crap out of my code and found a slight oversight. My first “correct” stab at the process had all the roads tied together with it’s only possibility. Thus, if a player does place all 15 of their roads. The code would flip through each road and see if it can find it’s little soul-mate. So essentially what I thought I created was a set of road segments that could only go together. The problem was that once you see that particular set from the other end, it’s a cheating bastard. So what I thought I had wasn’t what I had at all. Re-write time.

I googled and lou-oogled (hot tub time machine, great movie,) around the web about how people have been implementing Catan’s longest road and really I have seen a lot of forum/blog posts about the situation. None of which I’ve been able to successfully implemented in Javascript. They did however spark my brain and come up with a valuable solution to the issue at hand. The biggest issue I had with the process was how do I loop through the same set of roads twice, without repeating myself and going through a loop I have no idea how to stop or how many times it’d have to iterate as the list of possibilities grew exponentially as the amount of roads were being added. God forbid the player built “trees” and “circles” out of their roads. Headaches ensued.

The solution to world hunger… err…. finding the Longest Road in Catan, pseudo-style.

Take all roads and toss them into an array by themselves.
//roads[x] = the entire chain, r1,r2,r3 ; roads[x][y] = road in roads[x] in pos. y, r1.

Keep track of the ends of each of these roads, represented by settlement spots (which I refer to as corners) in an array that correlates to the roads’ array.
//ends[x][y] = x is equal to the x in roads, y = is the ‘left’ & ‘right’ of the roads’ x.

Set maxMisses to the amount of roads and misses to zero, and make to false.
//this is the control to see if a new chain of roads were created.

while (misses < maxMisses) Loop through all of the player’s roads. Loop through all the chains that were made. If the current road in the loop isn’t in the current chain, proceed, Now, if the current road links to the current chain and it’s not already in that chain,
– Clone the current chain along with the ends of that chain.
– Add the current road to the cloned chain  and update the new ‘ends’ of the chain, add to the database of chains.
– set make to true. end the loop of the chains.

If the make is false, misses++, otherwise it’s set back to zero. end all loops… That will give you all the possible set of chains for the given player’s roads. It amounts to a bunch of roads, many of which are duplicate of themselves. This is because of the starting points of the roads; do remember that we clone each time we add a new road. They can easily be filtered out afterwards by seeing if the length is greater than 4 (Catan rules), you can eliminate more if you’ve stored the current longest road.

You can always comment / email me if you’ve got questions about my implementation or if you want to see some code. (Warning, I’m not a pro-scripter by any means and some stuff is kind of messy, and not exactly ‘efficient’.) Next time, how to see if the chain has been interrupted by an opposing settlement/city.

Still recovering…

25C7DBB7FDEE98EB339313F2B55B68D5

Went to Vegas this past week and enjoyed it thoroughly. Definitely missed out on a bunch of sleep, but replaced that with plenty of booze and gambling. I wish I could go there more often, but then again, I might die by the time I’m forty.

Go see Beatles Love by Cirque du Soil. Amazing, two thumbs way up. Also, get totally hammered in a good mood and check out the Tournament of Kings at Excalibur. totally worth the money, great entertainment.

When you get back from Vegas, give your liver a break, the drinks are ten times stronger coupled with lack of sleep and more booze, you’re going to be a wreck.

Best part of all, I did what I wanted to do, I learned (enough to play, basically), how to play craps. Interesting game and if you can find a cheap enough table it’s worth your time to play as it can be a cheap/fun experience. Don’t be let down when you loose the dice. I threw those bitches off the table more times than you could count.

Anyways…

Back on Traders again, working away mainly fixing lots of bugs and graphical errors that have been popping up. As of now, I’m going to say an early summer release, if not sooner. Something will be in your hands sooner rather than later.

Just a brief update.

I’m just making this update quickly over my lunch time at school. I actually meant to throw this stuff up last night, but my procrastination got the better of me.

Anyway, I managed to simplify a few things when it came to loading/displaying maps (whether or not it’s more efficient, I’m not entirely sure, haven’t tinkered yet). But the bottom line to that is that you can now pick and decide which map you’d like to play given from the available maps. I do plan on modifying this even further so I don’t have to readily distribute all the maps with each client, but rather with just the server. That’ll be done tonight barring anything going awry.

Also what I managed to squeeze into last night was the proper dispersal of numbering. Which I think if I recall, I fucked up again. But none the less, it can and most likely be fixed.

So, you may ask, what’s next?

In a lot of the things I’ve shown recently, the hexes are shown as “random” hexes, so now, I have to convert to a real hex with a resource equivalent. Nothing major, just setting everything right is the issue, although it isn’t really one in the first place. It’ll be handled.

I’ll bring another update (perhaps) tomorrow, maybe showing some screens and such. If I’m nice.