# Intra Projects h42n42 Edit

### Scale for project h42n42

##### You should evaluate 1 student in this team

Git repository

### Introduction

For the smooth running of this evaluation, please respect the following rules:
- Remain polite, kind, respectful and constructive whatever happens during
this conversation. It's a matter of confidence between you and the
42 community.
- Highlight the potential problems you ‘ve had with the work you're presented
to the person or the group you're grading, and take the time to talk about
and discuss those issues.
- Accept the fact that the exam subject or required functions might lead
to different interpretations. Listen to your discussion partner's
perspective with an open mind (are they right or wrong ?) and grade them as
fairly as possible.
42's teaching methods can make sense only if peer-evaluation is
taken seriously.

### Disclaimer

Ocsigen is a open software issued by CNRS, University of Paris
Diderot and Inria public research labs. It is developed in collaboration
with BeSport SAS. It is a collaborative project growing with each user
contributions.
This project will only give you a small glimpse of what Ocsigen
can do and it won't use its most significant functionalities (client-
server programming, mobile applications...). These points will be
tackled in a coming project.
This project is an introduction to web programming in OCaml on the client
side with Ocsigen. It helps us evaluate:
- First, your ability to approach a new technology with an open mind,
to find your way in a substantial documentation in English and to
join a community around an open software.
- Your understanding of the web programming basics with HTML, CSS
and DOM on the client side.
- Your understanding of the programming basics in OCaml, Tyxml
and Lwt libraries and interaction between OCaml and the DOM.
- Your ability to achieve a clean and comfortable application with playable
rules.

### Guidelines

- You must only evaluate what you will find in the student's or group's
GiT repository.
- Take the time to check that the GiT repository matches the student or
group and the project.
- Double check that no malicious alias was used to mislead you and make you
grade something different from the official repository content.
- If a script supposed to help evaluate the exam is supplied by either side, the
other side will have to strictly check it to avoid nasty surprises.
- If the evaluating student has not yet taken this project, they will have to
read the exam subject in its entirety before starting the evaluation.
- Use the flags available on this grading system to signal an empty or non-
functional project, a norm flaw, cheating, etc. In that case, evaluation stops
and final grade is 0 (or -42 if it's a cheating problem). However, if it's
not a cheating problem, you are invited to keep talking about the work that
has been done (or not done, as a matter of fact) in order to identify the
issues that lead to this stalemate and avoid it next time.

### Attachments

#### subject.pdf

### Playability and respect of the guidelines

This part will evaluate the mandatory part of the subject and check that all the points required by the subject are valid.

#### Creatures movements

Creatures movements must be smooth and realistic (rebounds in particular).
There should be no creature outside the play area, even the berserk when
they're close to the edge. Creatures must be able to go to the edges of
the terrain.

Yes No

#### Contamination

Sick creatures must disappear after a while. (1 point) Touch
contamination with the river or a sick creature must be
implemented. (2 points) Distance calculation must be accurate
(no contamination without touch, potential contamination if
touch). (2 points)

Rate it from 0 (failed) through 5 (excellent)

#### Berserk and mean creatures

Some sick creatures will go berserk. They grow bigger, thus increasing the
risk of touching another creature. (2 points) Berserk size must be taken
into account in the contamination's calculation. (1 point) Some sick
creatures must get mean. They run after the healthy creatures to
contaminate them. (2 points)

Rate it from 0 (failed) through 5 (excellent)

#### Hospital

When sick creatures are taken to the hospital, they must be healed when
they get out.

Yes No

#### Game

The difficulty must evolve and the game must be playable.(2
points) No new creature should spawn if there is no healthy creature
left.(3 points)

Rate it from 0 (failed) through 5 (excellent)

### Technical points

#### Competition

Each creature will be animated by a LWT thread, excluding any kind of
competition (don't use a Javascript function like setTimeout in
particular). Creature movement must be smooth(not jerky).

Yes No

#### Handling HTML

Each creature must be an HTML element. All the dynamically
generated elements of the page should be thanks to the TyXML
library (Eliom_content.Html5 for instance).

Yes No

#### Interacting with the DOM

When there's no more creature on the map, a message must appear,
indicating the game is over.

Yes No

#### Mouse events

The mouse events must be exclusively programmed with the Lwt_js_events
library. Creatures should be easily movable and dropped anywhere in the
page. Test the creature drop out of the game area and out of the window.

Yes No

### Bonus

Bonus will be taken into account only if the mandatory part is PERFECT. Perfect means it showed no error or random behavior during the test and the evaluation.

#### Grapnic design

The game is graphically pleasant. For instance:

- Each different type of creature show a specific graphic detail that sets them apart.
- The game environment is consistently and pleasantly stylised.
- Etc.

Yes No

#### Curseurs

A form allows to set the different parameters of the game. Overall,
the assessed student has used cursors, radio knobs and check boxes to
fix the game's and environment's parameters. Changing the form settings
has a real impact on the game's environment.

Rate it from 0 (failed) through 5 (excellent)

#### Effective collision detection

Ask the assessed student if the collision detection between
the creatures has been optimized. Is it effectively implemented?
Did the student use a quadtree type solution, for instance?

Yes No

### Ratings

Don’t forget to check the flag corresponding to the defense

Ok Outstanding project
Empty work No author file Invalid compilation Norme Cheat Crash Incomplete group Forbidden function

### Conclusion

Flag
OkInvalid compilationNormeCheatCrashIncomplete groupOutstanding projectForbidden FunctionEmpty workNo author file

Leave a comment on this evaluation ( 2048 chars max )

###

####

###

#### Flash modal content (raw)