Welcome, Guest. Please login or register.
April 27, 2024, 03:42:27 AM

Login with username, password and session length

Search:     Advanced search
we're back, baby
*
Home Help Search Login Register
f13.net  |  f13.net General Forums  |  Gaming  |  Steam  |  Topic: TIS-100 -- from the makers of SpaceChem and Infinifactory 0 Members and 1 Guest are viewing this topic.
Pages: [1] Go Down Print
Author Topic: TIS-100 -- from the makers of SpaceChem and Infinifactory  (Read 9230 times)
Trippy
Administrator
Posts: 23622


on: June 01, 2015, 02:16:35 PM

!!!WARNING!!! EARLY ACCESS !!!WARNING!!!

http://store.steampowered.com/app/370360

Assembly language programming game. Compete with others to write the fastest and/or shortest routines.

Haven't the tried it yet but the leaderboards reminds me of the competition we had in my 68000 assembly class to write the fastest and/or shortest code to the exercises.
Quinton
Terracotta Army
Posts: 3332

is saving up his raid points for a fancy board title


Reply #1 on: June 02, 2015, 12:36:47 AM

I love this.

Retroprogramming puzzle game on a machine that's 4x4 tiles of quirky CPUs with 14 instructions local memory.

This is probably the thinnest veneer of any of the Zachtronics engineering puzzle simulation games.

Still very nicely polished, but it's not even pretending to be anything other than a parallel programming puzzle game.

In a way, deep experience with assembly is almost a disadvantage, because the instruction set is designed to be accessible and a good set of pieces to solve puzzles with rather than a realistic instruction set.

I installed this in the morning, started poking at it, immediately took a vacation day and spent the rest of the day playing.

18/20 puzzles finished.  The two remaining ones (detecting prime numbers and sorting lists) are evil/brutal given the limitations of the machine.
Trippy
Administrator
Posts: 23622


Reply #2 on: June 02, 2015, 11:25:32 AM

In a way, deep experience with assembly is almost a disadvantage, because the instruction set is designed to be accessible and a good set of pieces to solve puzzles with rather than a realistic instruction set.
Also with the way the game is structured with limits on the number of instructions you can fit in a node, along with input/output and storage limits means you can't just cram all the instructions to solve a problem into one node like you would if you were writing a real program.

Quote
I installed this in the morning, started poking at it, immediately took a vacation day and spent the rest of the day playing.
When I got on last night to give it a try you already had 7.5 hours played at that point awesome, for real
Quinton
Terracotta Army
Posts: 3332

is saving up his raid points for a fancy board title


Reply #3 on: June 02, 2015, 08:52:37 PM

I'm having to go back and re-optimize stuff as more people are playing it and making me look bad on the histograms!
Quinton
Terracotta Army
Posts: 3332

is saving up his raid points for a fancy board title


Reply #4 on: June 04, 2015, 03:32:19 AM

Evolution of my Prime Number Detector (spoilers):
Brute Force 612319 cycles, 5 nodes, 47 instructions

Sieve 116974 cycles, 6 nodes, 51 instructions

Parallel 19228 cycles, 9 nodes, 96 instructions

Parallel + Optimized 2/3/5 Division 5910 cycles, 9 nodes, 105 instructions
« Last Edit: June 04, 2015, 04:58:33 AM by Quinton »
bhodi
Moderator
Posts: 6817

No lie.


Reply #5 on: June 06, 2015, 08:24:57 AM

I am so goddamned bad at this game. I think I'm too visual a person. I was able to do well in infinifactory and spacechem but I just am not "getting" this. I was never great at math.

Quinton on the second (third?) level what's the adder trick to get less cycles? I'm MOV UP, ACC; ADD ACC; MOV ACC DOWN but there's a better way? wtf am I missing?
Quinton
Terracotta Army
Posts: 3332

is saving up his raid points for a fancy board title


Reply #6 on: June 06, 2015, 06:54:35 PM

Do you mean "Signal Amplifier" or "Differential Converter"?

I'd generally aim for correctness and come back to optimize in a later pass (I solved most of the puzzles before circling back to squeeze more cycles out of 'em).  Especially for the "simpler" designs like some of the early ones, it can be a pain to really tune them (there are some where I haven't yet figured out how people have gotten their cycle count as low as they have).

The biggest piece of advice I'd have for TIS-100 is: Remember that you're programming not one computer but 10-15 tiny, limited computers, and the trick to getting the fewest cycles often involves making sure you're doing as much work in parallel as possible.  Optimizing for node count or cycle count is a bit different, but my obsession is always with lowest cycle count.

Some useful tidbits (more later, grabbing dinner):

- use adjacent nodes as storage elements
  If there's a node to the left, you can have it just "MOV RIGHT RIGHT"
  and then do a MOV ACC LEFT and later ADD LEFT or whatnot rather
  than fiddling with SWP/SAV

- use JRO to control adjacent nodes, it's a powerful instruction
L: JRO LEFT
  ADD 1
  JMP L:
  MOV ACC DOWN
  MOV 0 ACC
is a node that if you MOV 1 to it will increment ACC and if you
MOV 3 to it, it'll spit the total out below and reset ACC

- unroll loops
  if you need to send a value down 4 times it's way faster to do four
  MOV ACC DOWN or MOV 17 DOWN than build a loop -- the overhead
  of counting, comparing, branching adds up quickly
Shannow
Terracotta Army
Posts: 3703


Reply #7 on: June 11, 2015, 11:38:20 AM

Finally a game my 82 year old, self taught programming father can enjoy...

Someone liked something? Who the fuzzy fuck was this heretic? You don't come to this website and enjoy something. Fuck that. ~ The Walrus
Pages: [1] Go Up Print 
f13.net  |  f13.net General Forums  |  Gaming  |  Steam  |  Topic: TIS-100 -- from the makers of SpaceChem and Infinifactory  
Jump to:  

Powered by SMF 1.1.10 | SMF © 2006-2009, Simple Machines LLC