Create an account


Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 19,878
» Latest member: riya199191
» Forum threads: 21,777
» Forum posts: 22,614

Full Statistics

Online Users
There are currently 970 online users.
» 0 Member(s) | 965 Guest(s)
Applebot, Baidu, Bing, Google, Yandex

 
  Demystifying Kubernetes Operators with the Operator SDK: Part 2
Posted by: xSicKxBot - 12-11-2018, 12:00 AM - Forum: Linux, FreeBSD, and Unix types - No Replies

Demystifying Kubernetes Operators with the Operator SDK: Part 2

In the previous article, we started building the foundation for building a custom operator that can be applied to real-world use cases.  In this part of our tutorial series, we are going to create a generic example-operator that manages our apps of Examplekind. We have already used the operator-sdk to build it out and implement the custom code in a repo here. For the tutorial, we will rebuild what is in this repo.

The example-operator will manage our Examplekind apps with the following behavior:  

  • Create an Examplekind deployment if it doesn’t exist using an Examplekind CR spec (for this example, we will use an nginx image running on port 80).

  • Ensure that the pod count is the same as specified in the Examplekind CR spec.

  • Update the Examplekind CR status with:

Prerequisites


You’ll want to have the following prerequisites installed or set up before running through the tutorial. These are prerequisites to install operator-sdk, as well as a a few extras you’ll need.

Initialize your Environment


​1. Make sure you’ve got your Kubernetes cluster running by spinning up minikube. minikube start

2. Create a new folder for your example operator within your Go path.

mkdir -p $GOPATH/src/github.com/linux-blog-demo
cd $GOPATH/src/github.com/linux-blog-demo

3. Initialize a new example-operator project within the folder you created using the operator-sdk.

operator-sdk new example-operator
cd example-operator
JMgJ3Q24igREHRCmKiX0UAhZVXH-arLxyyXWfKAm

What just got created?

By running the operator-sdk new command, we scaffolded out a number of files and directories for our defined project. See the project layout for a complete description; for now, here are some important directories to note:

  • pkg/apis – contains the APIs for our CR. Right now this is relatively empty; the commands that follow will create our specific API and CR for Examplekind.
  • pkg/controller – contains the Controller implementations for our Operator, and specifically the custom code for how we reconcile our CR (currently this is somewhat empty as well).
  • deploy/ – contains generated K8s yaml deployments for our operator and its RBAC objects. The folder will also contain deployments for our CR and CRD, once they are generated in the steps that follow.  

Create a Custom Resource and Modify it


4. Create the Custom Resource and it’s API using the operator-sdk.

operator-sdk add api --api-version=example.kenzan.com/v1alpha1 --kind=Examplekind
JMgJ3Q24igREHRCmKiX0UAhZVXH-arLxyyXWfKAm

What just got created?

Under pkg/ais/example/v1alpha, a new generic API was created for Examplekind in the file examplekind_types.go.

Under deploy/crds, two new K8s yamls were generated:

  • examplekind_crd.yaml – a new CustomResourceDefinition defining our Examplekind object so Kubernetes knows about it.
  • examplekind_cr.yaml – a general manifest for deploying apps of type Examplekind

A DeepCopy methods library is generated for copying the Examplekind object

5. We need to modify the API in pkg/apis/example/v1alpha1/examplekind_types.go with some custom fields for our CR. Open this file in a text editor. Add the following custom variables to ExamplekindSpec and ExamplekindStatus structs.

JMgJ3Q24igREHRCmKiX0UAhZVXH-arLxyyXWfKAm

The variables in these structs are used to generate the data structures in the yaml spec for the Custom Resource, as well as variables we can later display in getting the status of the Custom Resource.  

6. After modifying the examplekind_types.go, regenerate the code.

operator-sdk generate k8s
JMgJ3Q24igREHRCmKiX0UAhZVXH-arLxyyXWfKAm

What just got created?

You always want to run the operator-sdk generate command after modifying the API in the _types.go file. This will regenerate the DeepCopy methods.

Create a New Controller and Write Custom Code for it


7. Now add a controller to your operator.  

operator-sdk add controller --api-version=example.kenzan.com/v1alpha1 --kind=Examplekind
JMgJ3Q24igREHRCmKiX0UAhZVXH-arLxyyXWfKAm

What just got created?
Among other code, a  pkg/controller/examplekind/examplekind_controller.go file was generated. This is the primary code running our controller; it contains a Reconcile loop where custom code can be implemented to reconcile the Custom Resource against its spec.  

8. Replace the examplekind_controller.go file with the one in our completed repo. The new file contains the custom code that we’ve added to the generated skeleton.

Wait, what was in the custom code we just added?  


If you want to know what is happening in the code we just added, read on. If not, you can skip to the next section to continue the tutorial.

To break down what we are doing in our examplekind_controller.go, lets first go back to what we are trying to accomplish:

  1. Create an Examplekind deployment if it doesn’t exist

  2. Make sure our count matches what we defined in our manifest

  3. Update the status with our group and podnames.

To achieve these things, we’ve created three methods: one to get pod names, one to create labels for us, and last to create a deployment.

In getPodNames(), we are using the core/v1 API to get the names of pods and appending them to a slice.

In labelsForExampleKind(), we are creating a label to be used later in our deployment. The operator name will be passed into this as a name value.

In newDeploymentForCR(), we are creating a deployment using the apps/v1 API. The label method is used here to pass in a label. It uses whatever image we specify in our manifest as you can see below in Image: m.Spec.Image. Replicas for this deployment will also use the count field we specified in our manifest.

Then in our main Reconcile() method, we check to see if our deployment exists. If it does not, we create a new one using the newDeploymentForCR() method. If for whatever reason it cannot create a deployment, print an error to the logs.

In the same Reconcile() method, we are also making sure that the deployment replica field is set to our count field in the spec of our manifest.

And we are getting a list of our pods that matches the label we created.

We are then passing the pod list into the getPodNames() method. We are making sure that the podNames field in our ExamplekindStatus ( in examplekind_types.go) is set to the podNames list.

Finally, we are making sure the AppGroup in our ExamplekindStatus (in examplekind_types.go) is set to the Group field in our Examplekind spec (also in examplekind_types.go).

Deploy your Operator and Custom Resource


We could run the example-operator as Go code locally outside the cluster, but here we are going to run it inside the cluster as its own Deployment, alongside the Examplekind apps it will watch and reconcile.

9. Kubernetes needs to know about your Examplekind Custom Resource Definition before creating instances, so go ahead and apply it to the cluster.

kubectl create -f deploy/crds/example_v1alpha1_examplekind_crd.yaml

10. Check to see that the custom resource definition is deployed.

kubectl get crd

11. We will need to build the example-operator as an image and push it to a repository. For simplicity, we’ll create a public repository on your account on dockerhub.com.

  a. Go to https://hub.docker.com/ and login

  b. Click Create Repository

  c. Leave the namespace as your username

  d. Enter the repository as “example-operator”

  e. Leave the visibility as Public.

  f. Click Create

12. Build the example-operator.

operator-sdk build [Dockerhub username]/example-operator:v0.0.1

13. Push the image to your repository on Dockerhub (this command may require logging in with your credentials).

docker push [Dockerhub username]/example-operator:v0.0.1

14. Open up the deploy/operator.yaml file that was generated during the build. This is a manifest that will run your example-operator as a Deployment in Kubernetes. We need to change the image so it is the same as the one we just pushed.

  a. Find image: REPLACE_IMAGE

  b. Replace with image: [Dockerhub username]/example-operator:v0.0.1

15. Set up Role-based Authentication for the example-operator by applying the RBAC manifests that were previously generated.

kubectl create -f deploy/service_account.yaml

kubectl create -f deploy/role.yaml

kubectl create -f deploy/role_binding.yaml

16. Deploy the example-operator.

kubectl create -f deploy/operator.yaml

17. Check to see that the example-operator is up and running.

kubectl get deploy

18. Now we’ll deploy several instances of the Examplekind app for our operator to watch. Open up the deploy/crds/example_v1alpha1_examplekind_cr.yaml deployment manifest. Update fields so they appear as below, with name, count, group, image and port. Notice we are adding fields that we defined in the spec struct of our pkg/apis/example/v1alpha1/examplekind_types.go.

apiVersion: "example.kenzan.com/v1alpha1"
kind: "Examplekind"
metadata:
name: "kenzan-example"
spec:
count: 3
group: Demo-App
image: nginx
port: 80

19. Apply the Examplekind app deployment.

kubectl apply -f deploy/crds/example_v1alpha1_examplekind_cr.yaml

20. Check that an instance of the Examplekind object exists in Kubernetes.  

kubectl get Examplekind

21. Let’s describe the Examplekind object to see if our status now shows as expected.

kubectl describe Examplekind kenzan-example

Note that the Status describes the AppGroup the instances are a part of (“Demo-App”), as well as enumerates the Podnames.

22. Within the deploy/crds/example_v1alpha1_examplekind_cr.yaml, change the count to be 1 pod. Apply the deployment again.

kubectl apply -f deploy/crds/example_v1alpha1_examplekind_cr.yaml

23. Based on the operator reconciling against the spec, you should now have one instance of kenzan-example.

kubectl describe Examplekind kenzan-example

Well done. You’ve successfully created an example-operator, and become familiar with all the pieces and parts needed in the process. You may even have a few ideas in your head about which stateful applications you could potentially automate the management of for your organization, getting away from manual intervention. Take a look at the following links to build on your Operator knowledge:

Toye Idowu is a Platform Engineer at Kenzan Media.

Print this item

  News - Street Fighter 5 Adding Optional Ads That Get You More Currency
Posted by: xSicKxBot - 12-10-2018, 10:45 PM - Forum: Lounge - No Replies

Street Fighter 5 Adding Optional Ads That Get You More Currency

Capcom is trying something new on the business side for Street Fighter V: Arcade Edition. The publisher announced that the game is adding optional "sponsored content" on December 11, and it will come in the form of advertisements to tell you about the Capcom Pro Tour competitive gaming event, content bundles for the game, and extra costumes you can buy.

The ads will show up in "several locations" throughout the game, including loading screens, tournament stages, and even on characters themselves. Specifically, characters will now have a new "Ad Style" option that will display sponsored content on clothing or the character model itself. The ads on stages, meanwhile, will display sponsored content in clear sight. And the loading screen ads are exactly what they sound like; Capcom clarified that the loading screen with ads enabled won't be longer than when they're disabled.

An example of Capcom Pro Tour ads in Street Fighter V
An example of Capcom Pro Tour ads in Street Fighter V

The important thing here is that these ads are entirely optional. If you do decide to view the ads, you'll be rewarded with extra Fight Money (the game's currency) when you play Ranked and Casual matches. There is an upper limit on the Fight Money payouts, however, though Capcom did not say what it is.

Capcom's blog post suggests that the sponsored content functionality is switch on by default. It can be toggled off in the Battle Settings menu. You can choose to only see ads where you want them, too; so you could choose to only see the costume ads or the stage and loading screen ads. Go to Capcom's blog post to learn more.

As Gamasutra reminds us, advertisements in games is nothing new, but what's notable here is that Street Fighter V is not a free-to-play game. Still, it is not unprecedented for full price games to feature ads. EA's FIFA franchise displays well-known global brands on the sidelines. Additionally, back in 2008, Barack Obama's campaign spent money to buy ads in 18 different video games, and he eventually went on to win the Presidency that year.

An example of more ads in Street Fighter V stages
An example of more ads in Street Fighter V stages

Most major video game publishers are looking at ways to make more money from games in new ways, and in-game advertising is just one of those ways, alongside microtransactions.

Ads in Street Fighter V launch on December 11, and it will interesting to see how players react. We also don't know yet what other gaming or non-gaming brands might sign up to put ads in Street Fighter V. Another question some may be asking is if Capcom is adding ads to Street Fighter V to make up for how it failed to reach Capcom's sales targets.

The game was originally released in 2016 for PS4 and PC, while the better-received Arc

Keep checking back with GameSpot for more.

Print this item

  News - Reminder: Katamari Damacy Reroll Is Out Now On Nintendo Switch
Posted by: xSicKxBot - 12-10-2018, 10:45 PM - Forum: Nintendo Discussion - No Replies

Reminder: Katamari Damacy Reroll Is Out Now On Nintendo Switch


With all the hullabaloo and excitement surrounding the launch of Super Smash Bros. Ultimate last week, we wouldn’t blame you for forgetting about the release of Katamari Damacy Reroll on Switch. If this applies to you, here’s your friendly reminder that it’s available as we speak and could well be worth your time.

Launching on the same day as Smash doesn’t seem to have done the title any favours, but the excitement for this one was incredibly high among our lovely readers when it was first revealed back in September. If you haven’t heard of this one before, you are essentially given control of a highly adhesive ball (the Katamari) and are capable of collecting paper-clips, books, cars, buildings, mountains, and even continents as it grows larger and larger. It’s pretty crazy.

The Switch version features remastered graphics and cutscenes as well as new motion controls unique to the console. Using two Joy-Con in either table-top or TV mode, players can move around by simply turning their wrists (you can see this in action in the trailer above). Players will also be able to play in a two-player mode on Switch with one Joy-Con each.


You can snag your own copy now for £15.99 / $29.99 and a free demo is also available directly from the eShop. We’re aiming to have a review for you soon.

Are you one of the many who were excited for this one? Did you forget about it, or did you buy it the moment it went on sale last Friday? Let us know below.

Print this item

  News - Don’t Miss: Deconstructing the art design of Journey
Posted by: xSicKxBot - 12-10-2018, 05:12 PM - Forum: Lounge - No Replies

Don’t Miss: Deconstructing the art design of Journey

The visual style of thatgamecompany’s Journey is dominated by gentle slopes, clean lines and flowing capes. The story of how the game’s art design coalesced, however, is peppered with rocky starts, bumps and sharp turns.

At GDC 2013, Journey art director Matt Nava presented the artwork he created during development and showcased how the characters, creatures, and architecture of the game evolved over time. 

It was an interesting talk, in part because Nava summarizes creative processes, inspirations, challenges, and constraints that were encountered while formulating the visual aesthetic of what would become an award-winning game that was lauded for its art style.

Now you can watch it again (or for the first time, if you missed it in person) for free on the official GDC Vault YouTube channel.

In addition to this presentation, the GDC Vault and its new YouTube channel offers numerous other free videos, audio recordings, and slides from many of the recent Game Developers Conference events, and the service offers even more members-only content for GDC Vault subscribers.

Those who purchased All Access passes to recent events like GDC, GDC Europe, and GDC Next already have full access to GDC Vault, and interested parties can apply for the individual subscription via a GDC Vault subscription page. Group subscriptions are also available: game-related schools and development studios who sign up for GDC Vault Studio Subscriptions can receive access for their entire office or company by contacting staff via the GDC Vault group subscription page. Finally, current subscribers with access issues can contact GDC Vault technical support.

Gamasutra and GDC are sibling organizations under parent UBM Tech

Print this item

  News - BioWare says Anthem won’t rely on big-spending ‘whales’ for success
Posted by: xSicKxBot - 12-10-2018, 05:12 PM - Forum: Lounge - No Replies

BioWare says Anthem won’t rely on big-spending ‘whales’ for success

This week, BioWare took some time in Los Angeles to show off key details about its upcoming online action RPG Anthem, sharing story details with members of the press in advance of a trailer preview at The Game Awards. 

Next week, we’ll be bringing you a conversation with game director Jon Warner about the direction of Anthem, but during the presentation BioWare lead producer Mike Gamble was able to talk to Gamasutra about the transition to live gameplay operations, and shared an interesting detail about BioWare’s philosophy toward its (loot box-free) plans for monetization.

Namely, Gamble said that as of this time, BioWare doesn’t feel the need to target so-called “whales” as the core part of its plans. 

A lot of game companies, especially in the free-to-play space, structure their monetization to attract large spenders who hopefully exceed the average user spend for a given game. When pressed if Gamble thinks BioWare needs these kinds of players for Anthem to succeed, Gamble’s immediate reply was “I don’t think so.”

With Anthem, Gamble stated that BioWare “is hoping to attract as many people as possible, make the pool as wide as possible, to support the game as long as possible. So even if we don’t have lots of people spending lots of money, we’re hoping the economy is such that we have a number of people [who can support the game.]”

“Having whales is great…but we don’t cater towards any particular group,” Gamble explained “Some people have more time than others, some people have less time than others, and that’s just where we leave it.”

Gamble also made an interesting comment during a group Q&A in response to a question from Mashable’s Jess Joho about BioWare’s plans for live operations for Anthem. “We want to support matchmaking where you don’t have to know six people on Reddit to play the game,” he said, rather bluntly pointing out that many online RPGs in the vein of Diablo and Destiny have that social barrier that can even turn away experienced players without the right social group. 

“We feel that is one of the barriers into getting into these kinds of games…we’ve tried to design the game that we felt we could get into [as single-player RPG players], we could take that extra step and say ‘you know this is actually fun playing with someone else.'”

Print this item

  Xbox Wire - World of Tanks: Mercenaries Gets a New Perspective with Commander Mode
Posted by: xSicKxBot - 12-10-2018, 05:12 PM - Forum: Xbox Discussion - No Replies

World of Tanks: Mercenaries Gets a New Perspective with Commander Mode

For nearly five years, we’ve carefully refined and improved the awesome experience of getting into tanks and blowing the hell out of other tanks at the ground level. But variety is the spice of life, as the cliché goes, and this December, we’re offering you something a little different alongside the tank deathmatches you know and love.

Between November 30 and December 9, Commander Mode will be available from the main menu in World of Tanks: Mercenaries on Xbox One. We’ve been testing this over the last few months with the help of our community, whose feedback has been invaluable in helping us bring an awesome new experience to both veteran players and newcomers to the game.

Here are three reasons why you should dive in and duke it out in this new mode while you can…

World of Tanks Mercenaries

World of Tanks Mercenaries

A New Battlefield Perspective

Commander Mode takes the action from the ground to the sky, giving you a whole new perspective of the battlefield. Fans of real-time strategy games like Halo Wars 2 and Command & Conquer will be in their element as this new mode invites commanders to take a god’s eye view of the battlefield.

Combat has been simplified for a smooth experience. Damage to crews and modules has been disabled, and all units will be loaded with unlimited default ammunition, leaving you to focus on vehicle placement and your own battle prowess!

World of Tanks Mercenaries

World of Tanks Mercenaries

Command and Conquer

As the Commander, you have total mastery over a platoon of nine vehicles. With a complete view of the battlefield and its strategic possibilities, select and command your vehicles to move and fight. Think fast to coordinate devastating flanking manoeuvres, rush the enemy with the full force of your platoon, or come up with other creative and cunning ways to achieve victory!

You can give commands to individual vehicles for carefully planned attacks, or groups of them for a cavalry rush. Order your tanks to follow waypoints, attack the enemy, or retreat from heated battles easily thanks to the intuitive control scheme.

World of Tanks Mercenaries

World of Tanks Mercenaries

Bring Down the Man

If you feel like sticking it to the man, head into battle as a Tanker to wage war from the ground level! While the Commander controls an entire platoon, as the Tanker you’ll join forces with five other players to try and outfox the enemy Commander.

The Tanker offers more of a classic World of Tanks-like experience. With one of six tanks randomly assigned when you head into battle — and most of the rules of battle are still applicable – for you to focus on bringing down the Commander.

Try out Commander Mode in World of Tanks: Mercenaries for a limited time until December 9 on Xbox One!

Print this item

  Steam - Now Available on Steam – Mutant Year Zero: Road to Eden
Posted by: xSicKxBot - 12-10-2018, 05:12 PM - Forum: PC Discussion - No Replies

Now Available on Steam – Mutant Year Zero: Road to Eden

Mutant Year Zero: Road to Eden is Now Available on Steam!

A tactical adventure game combining the turn-based combat of XCOM with story, exploration, stealth, and strategy. Take control of a team of Mutants navigating a post-human Earth. Created by a team including former HITMAN leads and the designer of PAYDAY.

Print this item

  Introducing the Interactive Deep Learning Landscape
Posted by: xSicKxBot - 12-10-2018, 05:12 PM - Forum: Linux, FreeBSD, and Unix types - No Replies

Introducing the Interactive Deep Learning Landscape

The artificial intelligence (AI), deep learning (DL) and machine learning (ML) space is changing rapidly, with new projects and companies launching, existing ones growing, expanding and consolidating. More companies are also releasing their internal AI, ML, DL efforts under open source licenses to leverage the power of collaborative development, benefit from the innovation multiplier effect of open source, and provide faster, more agile development and accelerated time to market.

To make sense of it all and keep up to date on an ongoing basis, the LF Deep Learning Foundation has created an interactive Deep Learning Landscape, based on the Cloud Native Landscape pioneered by CNCF. This landscape is intended as a map to explore open source AI, ML, DL projects. It also showcases the member companies of the LF Deep Learning Foundation who contribute contribute heavily to open source AI, ML and DL and bring in their own projects to be housed at the Foundation.

Read more at LF Deep Learning

Print this item

  Mobile - Review: Morels
Posted by: xSicKxBot - 12-10-2018, 04:41 PM - Forum: New Game Releases - No Replies

Review: Morels

Every time we visit our local supermarket my wife always bemoans the limited choice of mushrooms. If we are especially lucky, lurking at the back of the shelf there may be a sweaty packet of shitakes but that is usually as good as it gets. I guess that you could always buy a kit and attempt to cultivate your own crop or you could go out foraging.

Unfortunately, the first option requires patience and the latter one is not without risks. Munch on the wrong mushroom and you could either find yourself tripping out of your head or on the mortician’s slab. It seems a lot more prudent to stick to playing a game or two of Morels.

Morels is a pretty straightforward card game in which the aim is to collect sets of mushrooms. There are two decks of cards, a large deck of day cards and a much smaller deck of night cards. The beautifully illustrated day cards depict the various types of mushrooms that you can collect. These range from the fairly common honey fungus to the ultra-rare and highly sought after morel. Be warned, because also lurking in this pack is the deadly Destroying Angel, which you obviously want to steer well clear of.

Morels 1

Also in the day deck are some items that will help you cook your fungi, these include frying pans and butter. Finally, there are eight moon cards; take one of these and you will be able to draw a card from the night deck. This introduces a push your luck element. The night cards consist of an extra copy of all eight types of edible mushrooms but you have no idea which one you will draw. The big advantage is that each night card counts as two mushrooms.

At the beginning of the game, each player is dealt three cards from the deck of day cards and a further eight cards are placed in a line. These cards represent the forest trail where you will commence your foraging.  The most basic action is to take one of the two cards at the start of the trail. There is a limit to how many cards can be held at once but playing a basket card can permanently extend this.

After each turn, the card left at the start of the trail is removed and placed in the decay pile.  Think of it as the bargain section of your local supermarket, for all those products about to pass their sell-by dates, which are often surrounded by a gaggle of old ladies with sharp elbows. This decay pile can hold up to four cards, after which the pile is emptied and the cards removed from the game. Instead of taking a card from the trail players can instead take all of the cards in the decay pile.

Morels 3

This is a good way of filling your hand, although the choice of cards on offer may not always be ideal. If neither the cards at the start of the trail or those in the decay pile are of interest to you, then you may wish to consider making preparations to delve deeper into the forest. You can trade in two or more matching mushrooms for some foraging sticks. On a later turn, you can use these sticks to take cards from further along the trail.

Gathering mushrooms is only half the fun. Next, comes the most important part where you actually sample the fruits of your labour and earn some points into the bargain. To commence cooking you need at least three mushrooms of the same type and a frying pan. You can enhance the flavour and points scored by adding some butter or a splash of cider. However, you are not a very adventurous cook and can never mix mushrooms of different types. Throw your chosen ingredients into the pan and with a delicious sizzling sound, your dish will be complete. Yum.

Instead of taking inspiration from a dusty Victorian botanical textbook, the artist has taken an altogether more whimsical approach. Hence, the cards are illustrated with some old-fashioned and quirky artwork in keeping with the weird and wonderful names of the mushrooms in the game. I doubt whether you will find a packet of Hen of the woods or Lawyers wig in your local Tesco’s. It is just a shame that the cards aren’t bigger. There seems to be a lot of dead space and I’m fairly certain that the screen could have been used more effectively. Furthermore, the background graphics are really basic and sit uneasily alongside the beautiful cards.

Morels 2

There are the usual options; you can take part in an online match or play offline against a computer opponent or a fellow human. It is a nice touch that the developers have bothered to add a range of different game variants. You can ditch the baskets in exchange for a larger hand limit, remove the moon cards or even add a load of extra morels to the deck. The chief advantage of playing this digital version is that you do not have to constantly shift cards around to refresh the trail.

Morels is a rather laid back and relaxing pastime. This probably explains why the original card game proved to be very popular with couples. The only things to beware of are those poisonous mushrooms. Thankfully, Destroying Angels do not kill you, but they do temporarily reduce your hand limit, which may also force you to discard cards. They are pretty easy to avoid, which means that their presence is only a minor inconvenience.

Overall, Morels is a fast-playing light game with a unique theme. In spite of its simplicity, there are still enough interesting decisions to keep players involved. It doesn’t attempt to introduce anything groundbreaking, but it does feel nicely balanced, requiring a satisfying mix of timing and luck.

Yes, I made it to the end of the review without a single fungus or mushroom related joke (congratulations -ED).

Print this item

  News - Avengers: Endgame Trailer Hints At Shuri's Fate
Posted by: xSicKxBot - 12-10-2018, 10:31 AM - Forum: Lounge - No Replies

Avengers: Endgame Trailer Hints At Shuri's Fate

The first trailer for Avengers: Endgame is with us. It has left fans with lots of questions and inevitably there will be much speculation about certain moments. But it also seems to confirm a couple of things too. We know that Hawkeye survived the devastating end of Infinity War, and that tragically Steve Rogers' beard did not. But the trailer also suggests that fan-favorite Shuri was one of Thanos's victims.

During the montage of the surviving Avengers looking very sad about the death of their friends, we see Bruce Banner looking at a series of holographic screens of the missing heroes. Among them is Shuri. She was last seen towards the end of Infinity War, trying to extract the Mind Stone from Vision's head. Shortly after this, the action switched to the forest where the rest of the Wakanda sequence plays out, and we never return to her.

No Caption Provided

Given 50% of every living creature in the universe is now gone, there was always a good chance that Shuri might be one of the victims. But with her brother T'Challa having also disappeared at the end of Infinity War, fans were hoping that the same fate didn't await her. Of course, Scott Lang is also on the missing list, and we now know he survived, so maybe there is still hope.

Avengers: Endgame releases on April 26, 2019 and is directed once more by Joe and Anthony Russo. Virtually all the major actors from the MCU are set to return, so that means Robert Downey Jr., Chris Hemsworth, Chris Evans, Benedict Cumberbatch, Mark Ruffalo, Elizabeth Olsen, Sebastian Stan, Scarlett Johansson, and so on. It had been rumored that this might be the last Marvel movie for some of the MCU's longest-running stars--in particular Evans--but nothing has been confirmed about their future in the franchise.

For more, check out the first Endgame poster, and read GameSpot's full breakdown of everything we learned about the movie from the trailer.

Print this item

 
Latest Threads
SHEIN Promo Savings{"S3MV...
Last Post: riya199191
16 minutes ago
SHEIN Best Coupon{"S3MV96...
Last Post: riya199191
17 minutes ago
SHEIN Existing Customers ...
Last Post: riya199191
18 minutes ago
SHEIN Trending VIP Coupon...
Last Post: riya199191
19 minutes ago
SHEIN Biggest Discount Of...
Last Post: riya199191
20 minutes ago
【$200 OFF】 Shein Coupon &...
Last Post: riya199191
21 minutes ago
【$300 OFF】 Shein Coupon &...
Last Post: riya199191
23 minutes ago
【$40 OFF】 Shein Coupon & ...
Last Post: riya199191
24 minutes ago
【$300 OFF】 Shein Promo Co...
Last Post: riya199191
25 minutes ago
【$200 OFF】 Shein Promo Co...
Last Post: riya199191
26 minutes ago

Forum software by © MyBB Theme © iAndrew 2016