Jump to content

Orab Games

  • Content Count

  • Joined

  • Last visited

Community Reputation

52 Excellent

1 Follower

About Orab Games

  • Rank

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Because if it was you in the game, you would be 32 pixels tall and the rest of the characters would be 16 pixels tall.
  2. For sure. I was working on a contract with an artist before I was forced to hang up programming as a hobby. To be honest, that person was very awesome to work with and I would recommend them to anyone for future projects! I feel terrible that I had to bow out right was we came to an agreement, but my life hasn't been the same since I had to make a choice to step away. Unfortunately, I doubt that project will ever see the light of day outside of concepts, but who knows. I'm forever grateful that they were understanding of my situation and understood that hobbies come after everything else in life.
  3. So, a couple things I see here. First off, I fail to see how these Kickstarter rules are not violated. Projects that share things that already exist, or repackage a previously-created product, without adding anything new or aiming to iterate on the idea in any way. Resale. All rewards must have been produced or designed by the project or one of its creators — no reselling things from elsewhere. Maybe there is a loophole being exploited with the book? Second, without legal contracts for publishing and IP ownership, I fail to see how Rob lost any of his rights to the game. He was not under legal contract, he was not an employee of Jeff's, nor has it been shown where Rob gave up any rights to the game, IP related to it, or branding which includes future titles or sequels. Mike Tyson can't create a "Mike Tyson's Punch Out 2" just because his name was on the game; just like I can't make a game using the Pac-Man sprite in a new game even if the entire game plays is changed. Without any of these legal documents or proper open licensing filed by Rob himself, the creator of the content is the owner of the content. I'm not a lawyer nor do I play one on TV, but I fail to see how Jeff can legally promote the creation of a sequel in a stretch goal without the original content creator's legal written permission. I don't see anywhere from either party where it explicitly says that Rob has given Jeff exclusive rights to all future creation, production, and publishing of all Black Box Challenge titles and related IPs, regardless of whose name precedes the title. It is very unfortunate that a fun collaboration project in a hobby community has come down to this, but I guess it shows that there may be something to contracts. I don't like operating on them, but to protect yourself and your creations, you have to now days. Hobbies aren't fun when legal matters get in the way.
  4. Well, I replied on Twitter, but I'll make it official here. Sign me up for a cart! Great cause.
  5. Awesome work! Thanks for putting in the time to make these.
  6. Yeah, there are many different ways to do it. But if you use someone else's compression tool (like shiru's), then you are bound by how they export the data. I do believe for values of 255 tiles in a row, they just do 255 and then start over with the same tile. So, if it was 275, you would write it 255 times and then do it again for 20 times. Again, this all depends on the exported code and how you program it. For some reason, this was sticking in my head for what I had to do. I'd have to check the code.
  7. Here are the 2 common ways (in my short research form a couple years ago) that I saw RLE work for different tools. There are variations of this, but these were the basic concepts that I grasped. ;First way: Using an indicator flag to tell your code when you are decompressing. Otherwise, just write the value uncompressedBackgroundTable: .db $11,$11,$11,$11,$11,$05,$07,$1f decompressFlag = $ff ; You can't store tiles at $FF if you do this. tileValues = $11,$05,$07,$1f arrayLength = $05 compressedBackgroundTable: .db $ff,$11,$05,$07,$1f Here, you would write your code pointing at the compressedBackgroundTable to say if table value is $ff, then write tile $11 five times. Then write tiles $07 and $1f next. The result on the screen would look like the uncompressedBackgroundTable. You saved 3 bytes of storage in this example. Most RLEs using this format will just write single tiles and paired tiles to the screen without compression as it is faster and saves space. I forget how shiru's tool exports the tables for pairs. ;Second way is not to use an indicator flag and always compress, even if it is 1 tile or a pair of tiles ;You would decide that if the first byte in the table is length or tile. In this example, I went length, tile. uncompressedBackgroundTable: ;Tiles on the screen .db $11,$11,$11,$11,$11,$05,$07,$1f compressedBackgroundTable: ;Same tiles compressed .db $05,$11,$01,$05,$01,$07,$01,$1f Here, you would write your code to look at the first value in compressBackgroundTable and store the array length ($05). Then you would look at the second value to see what tile to write ($11). Then you would repeat until the end of the table. As you can see in this example, no bytes were really saved. The coding is much easier for this, but the compression can be worse depending on your screen. Busy screens could take up more data. Finally, you will have to write in your code some way to tell the system to exit the background writing loop. Since the table is compressed, the tables will be different lengths. You can figure out the best way for you, but I like to end my tables with a flag. In Example 1, I would use $FE as the last value in the table. If the code sees that value, it will exit the loop. However, now you can't store any tiles in $FE or $FF (well, technically you can if you use a third flag to ignore these 3 flags as flags). In the second example, you could just use $FF as the table ending flag. ;From the first example, $fe tells the code to stop writing tiles. compressedBackgroundTable: .db $ff,$11,$05,$07,$1f,$fe
  8. It does and I have used it. It works great with the proper decompress code. However, it's designed for tile by tile and not metatiles (that I know of, I haven't figured out any other way). I know plenty of programmers who just use RLE compression and call it a day. Some will write their own tools to compress metatiles with RLE as well, which can eat a lot of CPU time. From what i gather, you are trading CPU time for storage space with compression. With the advantages of homebrew mappers like GTROM and UNROM512, storage space is not much of an issue anymore unless your game is overly huge! If I were you, I would start with RLE and go from there. NESScreenTool does a great job. Do some research to understand how it works. For example, let's say that you have 2 tiles next to each other that are the same, the other tiles on either side are different. So, you have a pair ($03,$08,$08,$01). Some RLE compression tools will compress the $08 and others won't. It is actually faster to write the $08 twice than it is to uncompress it in some RLE tools. It simply comes down to how much more code do you want to write.
  9. Yeah, I do this. Tailgate Party's achievements are handled this way. I'm sure there are many more times I have done this as well.
  10. Unfortunately, it looks as if the mod instructions for this are gone. The site that used to host it is no longer active. http://www.made-by-bacteria.com/ I found many mentions of the controller, but no alternate site for the build. I dug through the Internet Archive a bit but had no luck since they don't keep every page of every forum. Maybe someone else will have better luck.
  11. Maybe @BacteriaMage can make a map for another Sly Dog Studio game???
  12. I played it exclusively on the AVS. Works great.
  13. You have to go to the Dojo to learn about combat. Go to the 41:15 mark in this video.
  14. Such a good game. Rob did a great job with this.
  15. Yes. I have a v1 Kazzo. I think it takes a bit of work, but I actually spoke to INL about this last year. What boards are in that pic?
  • Create New...