Ludii Forum
Mark Steere's Oust (2007) - Printable Version

+- Ludii Forum (https://ludii.games/forums)
+-- Forum: Suggestions (https://ludii.games/forums/forumdisplay.php?fid=10)
+--- Forum: Submit Your Games (https://ludii.games/forums/forumdisplay.php?fid=23)
+--- Thread: Mark Steere's Oust (2007) (/showthread.php?tid=246)

Pages: 1 2


Mark Steere's Oust (2007) - AlekErickson - 11-09-2020

Michael Amundsen has implemented Oust in Ludii, and I am taking the liberty of uploading the file for him after adding some of the metadata.

This game is truly a modern classic - and unique for it's quality of being an annihilation game where the board starts out empty.


RE: Mark Steere's Oust (2007) - Michael - 11-09-2020

I'm actually working on the graphics now. See attached file. I also wanted to wait for the built in quantifier (all Sites …).

Edit: I didn’t mean to sound ungrateful, Alek. I actually cosidered asking you to do this, but I wanted to try and see if I could emulate the style in Mark’s rules pdf. But thank you for contributing!


RE: Mark Steere's Oust (2007) - AlekErickson - 11-09-2020

Oh, sorry for jumping the gun! And thanks for working on this amazing game.


RE: Mark Steere's Oust (2007) - Michael - 11-09-2020

I have three questions/requests before I think this is fit for submission:

  1. Were I naive, I would think that the symbol shown on a site using (show Symbol "disc") would be perfectly aligned with what is shown when one adds a disc to a site during play.  This way I could show a gray disc with a black stroke on each site and play with discs with a transparent stroke in order to emulate a circular tile on a circular cell. I have worked around this and scaled the symbol by 0.98 and play with discs whose stroke color is the same as the fill color. But one can still see a slight disalignment. Can this be fixed?
  2. When the official universal quantifier is released, I would like to replace my homemade "forAllSites" with that one.
  3. I am not sure if the line "if:(= (next) (who at:(to)))" is necessary in the following bit:

Code:
("forAllSites"
    (sites Around (sites Group at:(last To)) Enemy)
    (>
        (size Group at:(last To))
         (size Group
             at:(site)
             if:(= (next) (who at:(to)))
        )
    )
)

This is the graphics workaround:
Code:
(metadata
    (graphics {
        (show Symbol "disc" Cell (sites Board)
            fillColour:(colour VeryLightGrey)
            edgeColour:(colour Black)
            scale:0.98
        )
        (region Colour (sites Board) (colour 0 0 0 0))
        (board Colour InnerEdges (colour 0 0 0 0))
        (board Colour OuterEdges (colour 0 0 0 0))
        (piece Colour P1
            fillColour:(colour Red)
            strokeColour:(colour Red)
        )
        (piece Colour P2
            fillColour:(colour DarkBlue)
            strokeColour:(colour DarkBlue)
        )
    })
)
And here is what I would like to have worked:
Code:
(metadata
    (graphics {
        (show Symbol "disc" Cell (sites Board)
            fillColour:(colour VeryLightGrey)
            edgeColour:(colour Black)
        )
        (region Colour (sites Board) (colour 0 0 0 0))
        (board Colour InnerEdges (colour 0 0 0 0))
        (board Colour OuterEdges (colour 0 0 0 0))
        (piece Colour P1
            fillColour:(colour Red)
            strokeColour:(colour 0 0 0 0)
        )
        (piece Colour P2
            fillColour:(colour DarkBlue)
            strokeColour:(colour 0 0 0 0)
        )
    })
)

If the disalignment can't be completely removed, I don’t think I want to use this visual style.
Also: I want to make the packed version of the script more readable. I’ll upload the new file here when it is done.


RE: Mark Steere's Oust (2007) - Eric Piette - 11-10-2020

Hi,

I am going to notify Matthew about the question 1, in general the questions about network or graphics are for him. However he is in holidays until next Monday.

For 2), ok no problem. But when you will think you are done with all the others aspects, I can do it for you in order to add it to the next release. (see attachment, I already did it and it works exactly in the same way that you current Oust.lud but in our dev version).

For 3), The condition "if:" is necessary if the (site) in entry can not satisfy the condition or if you want a group of different pieces (not only the type of piece in (site) in your example). However, here, it seems (site) is always equal to the pieces owned by the next player and you want a group only based on them, consequently the condition seems not useful here.

I notice that's your pieces are red and blue, but the players are white and black. Is it normal?
If not, you can modify the colour in the graphics metadata with

Code:
(player Colour P1 (colour Blue)
(player Colour P2 (colour Red))


Moreover, I never played that game before but I notice on BGG that the game can be played on a hexhex board but also in a Go board. That's not necessary but it would be cool to have the two boards in option of that .lud :)

Last question, do you recommend to add that game to the space/group game? Or to another category?

Regards,
Eric


RE: Mark Steere's Oust (2007) - Michael - 11-10-2020

Thanks, Eric!

Here is a file whose graphics are conditioned on the disalignment being fixed. 
And you have to replace my quantifier again. I didn't dare to do it blindly.
Go board (maybe size 11) can be added in a later update, I think. It's a good idea. But that board should have Go style graphics. I'm not sure if it is possible to change graphics with the board option.

Otherwise, it is good to go :) (if no one objects)
And thanks for the help, Alek!

Edit: I'm making a mess of things here. Sorry for that. But the discs one plays on should really be ever so slightly smaller. They should be scaled by 0.98. It actually makes a very noticable difference because the discs are "kissing" without the scaling, and that's easy to perceive. I have changed the attached file. Their size looks good in v. 1.1.0.

Also: I found out that making the stroke color transparent doesn’t change the visible size of the disc, so it won’t work as I naively thought. I guess it can be like it is now until we find out whether it is possible to make it perfect (read:make it look like circular tiles on circular cells).


RE: Mark Steere's Oust (2007) - Michael - 11-10-2020

I forgot to answer the question about category..
I'm not actually sure. My gut says it belongs with Atari Go and Fanorona, which are in war/other.


RE: Mark Steere's Oust (2007) - Eric Piette - 11-11-2020

Hi,

I put it in the space/group because the main concept used in it seems to be the group.
Do you confirm? Or maybe you have reasons to put it with Atari Go and Fanorona?

Regards,
Eric


RE: Mark Steere's Oust (2007) - Michael - 11-11-2020

My reason for suggesting the same category as those two games is that Atari Go is just as much about groups than Oust is. Oust is about capturing groups (which can be single pieces) by building greater groups, eventually capturing all enemy groups (read: pieces). Atari Go is about capturing a group by surrounding it. Also, Oust is an annihilation game, like Fanorona. The (quite war-like) point is to eradicate the enemy. The games in the group category seem to have a different kind of goal, like making big groups, big group products, an even number of groups or groups of a certain size. These goals are more abstract and more specifically connected to the concept of a group.


RE: Mark Steere's Oust (2007) - Eric Piette - 11-11-2020

Hi,

That's like you want, you made the .lud for the game.
I am going to move it to war/other.

But currently, in Ludii we try to put the games in the category folder corresponding to the main feature of the game. If you think that's the capture part is more important than the group that makes sense. I never played that game, so I follow what you think ;)

Regards,
Eric