Menu

Code Commit Log


Commit Date  
[r888] by nerius

Adding some intricacies to ComputerPlayer. Defining m_dropped field which is
used during a race condition w.r.t. user drops and system drops. The method
run_dropBlock() now takes a boolean input parameter, 'isBlockTouchingBottom'.
The changes made here are purely theoretical and have not been tested. About
to do that. Compiles successfully though.

2023-08-24 19:27:05 Tree
[r887] by nerius

NewBlockStartsEvent given a new member, which exposes isBlockTouchingBottom().
As a result EventEncoder and SimpleGameLogic had to be changed as well. Adding
member variable m_touchingBottom to class SimpleGameLogic, which tells if the
current playing block (in the case that it is in play) is grazing the bottom
(either the bottom of pit boundary or grazing frozen cruft below). That new
member variable is used in the following situation. When the block is already
touching bottom and when the user drop sequence is initiated, instead of
freezing the block immediately, the block is given m_hitBottomDelay
milliseconds before freezing in order to be able to perform some final post
drop sequence of events. The computer player needs this logic, because there
is no way to poll these kinds of situations; in particular if the computer
player initiates a user drop but at the same exact time a system drop block
event is created, then before, there would be no chance to perform post drop
events, and now with this change, a small time window is available to perform
these movements.

2023-08-24 15:58:23 Tree
[r886] by nerius

Adding 'excellent5.blo' and 'excellent6.blo'. Not really sure why I'm adding
these, perhaps I'll keep the best ones eventually.

2023-08-24 15:09:24 Tree
[r885] by nerius

Removing a line of code which defines local variable 'startPos', since that was
never used anywhere.

2023-08-23 23:22:56 Tree
[r884] by nerius

Importing net.blockout.production.BlockDistribution.WeightedBlock for greatly
reduced verbosity in code. Adding new level 28, which includes 6-er blocks but
has a pit size of 6x4. This level is very difficult.

2023-08-23 20:15:57 Tree
[r883] by nerius

Importing net.blockout.impl.BlockPlacementStrategy.Move to be able to refer to
class 'Move' directly, greatly reducing verbosity of code in certain sections.
Local variable 'TreeMap<Long, Move> qBestMoves' now uses generics, is
parameterized with proper types. With m_postDropActionExec, now only changing
the operation bits one by one as the moves are made and detected; leaving the
negate bits alone. No longer assuming direct correlation between
AttemptedBlockMovementEvent.X_AXIS & Move.POST_DROP_SLIDE_X,
AttemptedBlockMovementEvent.Y_AXIS & Move.POST_DROP_SLIDE_Y, rather assigning
these in a 'switch' statement.

2023-08-23 19:42:32 Tree
[r882] by nerius

Refining some comments in BlockPlacementStrategy.

2023-08-23 19:35:46 Tree
[r881] by nerius

Utilizing Java generics & fixing major problem with POST_DROP_* bits in class
BlockPlacementStrategy.Move. There was a problem with post drop rotations,
with the z axis rotation in particular.

2023-08-23 17:38:00 Tree
[r880] by nerius

Adding enough requestUpdate() calls so that a blank screen would not happen
with JVMs that have some weaknesses. I really don't like this way of doing
things, yet I don't seem to have control over the quality of the now-Oracle
controlled JVMs. The audio modules are also quite stubborn and buggy.

2023-08-23 17:33:39 Tree
[r879] by nerius

In levels 21 & 22, changing height of pit (z value) from 10 to 11. More space
in case the block sequence is unfavorable by chance, so there's more room to
recover.

2023-08-23 17:25:56 Tree
Older >
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.