OpenLLM-France/wikimedia huggingface dataset:
# Guide to Game Development

This is a guide that should help you on your way to becoming a game developer, no matter what which path you want to take. This book should either help you through each aspect, or redirect you to a place that can. This book has been designed to be 'straight' and 'to the point' to allow you to make the most of your time. If you have found a section of the book that's lacking and you feel like you know enough to write about it, feel free to edit it, it will also help you get a better understanding of the topic.

## Categories

* Introduction
          An introduction about me, the book and how it can help you.
* Theory
          The theory, logic, mathematics and understand behind how a game works.
* Platform
          The platform that the game is going to be developed for.
* Rendering and Game Engines
          The tool/framework/engine that you're going to use to create the game.
* The Programming Language
          The programming languages that are going to be used to create the games.
* Data file types
          The data file types used for storing information about the game.
* Graphics and textures
          The creation of effective appealing graphics and textures for games.
* 3D Modelling
          The creation of 3D models used for characters, terrain and more!
* Audio
          The music and sound effects that will accompany the game.
* Online Connectivity and Multiplayer
          Connecting your game to the internet and to other players
* Settings
          All the items that could be added into a game settings menu.
* Legal and Publishing
          The legal and publishing side of game development.
* Miscellaneous
          All other subjects related to game development.
# Guide to Game Development/Introduction/Where do I begin?

To use this page, go the section which best describes your skill level.

## Complete Beginner to programming

When you've never done any sort of programming.
Select a beginner language to learn:
* Visual Basic.Net
          Windows/Microsoft only
          Allows for creation of console applications, forms, Windows modern/metro apps and Windows Phone apps
* Xojo
          Mac only
          Console & Form design
* Java
          Windows, Mac and Linux
          Output streams, forms
* Python
          Windows, Mac and Linux
          Scripting language - Best suited for output stream only, but can have other capabilities.

## Know basic programming, but have never made a game before

You have a few options:
* Learn C++, most games are made with this language
** C++ can be used on all desktop platforms and most mobile platforms.
** Can program on Windows, Mac and Linux!
** Once you know C++, try integrating it with OpenGL
             For this, I'd also recommend that you use Glut to help with you link the game to the OS (e.g. placing the graphics onto the form).
* If you know VB or C#, then you can use OpenTK (an OpenGL library for .Net) to create a 3D graphics.
* If you know C# or Javascript, then you can start learning how to use the Unity Engine.
* If you know Java, then you can use LWJGL (an OpenGL library for Java)

## Made a game/simulation with a programming language, but not a game engine

For this, I'd recommend that you try out using a game engine like the Unreal Development Kit (UDK).
Alternatively, if you wish to mix your knowledge of programming with a light-weight engine, then try out: Unity

## Made a game/simulation with a game engine, but not a pure programming language

For this, I'd recommend that you try making a game with programming language, if you don't know any programming languages, then see: Complete Beginner to programming
Else, if you know a programming language then see: Know basic programming, but have never made a game before

## None of the above apply to me

In which case you can either ask about what to do in the discussion, or just have a look around the book and see what interests you.
# HKDSE Geography/E1/Igneous Rocks
## Formation

* Magma in the mantle is under great pressure.
* When a line of weakness appears in the crust and reaches the magma chamber below the magma pressure is released.
* Magma rises along the cracks to the earth's surface (extrusive/volcanic rock) or inside the earth's crust (intrusive rock)
* The magma cools and solidifies. Crystallisation occurs in the process. Interlocking crystals are formed.

## Classification

| | Acidic High silica content Lighter colour | Basic Low silica content Darker colour |
| Intrusive Formed by intrusive vulcanicity Formed deep underground - Plutonic rocks Formed at a shallower depth = Hypabyssal rocks The deeper underground, the slower the cooling rate and coarser the crystals (i.e. larger the grains) | Granite, porphyry, dolerite | Gabbro |
| Extrusive Formed by extrusive vulcanicity Higher cooling rate and finer crystals (smaller grains) | Rhyolite, Tuff, Obsidian, Pumice | Basalt |

## More on the Specific Types
### Granite

A plutonic rock, granite is made of three minerals: quartz (clear/milky), mica (black) and feldspar (pink/grey). These minerals occur as interlocking crystals with coarse or medium-sized grains. It is a well-jointed rock and light in colour.
# HKDSE Geography/E1/Metamorphic Rocks

There are two main types of metamorphism:

## Dynamic and regional metamorphism

Formation:
* Internal stress accumulates along a fault or fold
* High pressure forces the minerals to realign to form metamorphic rocks
* Rocks are flatted and the minerals are aligned towards the plane of flattening
* A foliated structure is formed
Conditions:
* Associated with large-scale mountain-building processes (the collision of two continental plates or the subduction of an oceanic plate)
* High temperature and pressure
Examples:
* Shale/Mudstone/Siltstone → Slate → Phyllite → Schist → Gneiss
* Granite → Gneiss

## Contact/thermal metamorphism

* Rising magma intrudes into the rock strata
* Heat from magma intrusion creates high temperature, which melts and recrystallises the rock crystals into new rock
This is a localised process. The zone of contact between the existing rock and the intrusion - i.e. where the metamorphism takes place - is the aureole. The rocks do not have a foliated structure.
Conditions:
* High temperature
* Magma intrusion
Examples:
* Bituminous coal → Anthracite
* Sandstone → Quartzite
* Limestone → Marble
# HKDSE Geography/E1/Rock Cycle

A rocks is an aggregate of minerals. Minerals are chemical compounds have different weight, colour and hardness, and these determine the properties of the rocks formed.

## Rock cycle

TODO
In this chapter, we will discuss the three rock types and their formation in detail. We will also take a look at weathering and mass movement. For the lowdown on other parts of the rock cycle, such as internal processes, erosion, transport and deposition, see M1 and M2.
For convenience, here are all the rock-cycle-related definitions (the explanations are covered in other parts of this book):
# HKDSE Geography/E1/Mass Movement

What better way to start this section with another definition?

## Stress and Strength

The occurrence of mass movement is determined by the interplay between two main factors:
Mass movement occurs when stress exceeds strength.

## Factors

Factors that affect the occurrence of landslides affect stress, strength or both.
* Water acts as a lubricant to weathered materials and increases pore water pressure. It also adds weight to weathered materials. Thus both the coherence of slope materials and friction will drop during rainfall. When the amount of rainwater reaches a certain level the coherence of the slope materials will break, leading to mass movement.
* Slope angle is another factor. Slope materials move slower on slopes with gentler gradient as the stress is smaller, and faster on slopes with steeper gradient as the stress is greater.
* Some rocks are more resistant to mass movement than others. Granite is more resistant than siltstone.
* The degree of weathering is important. An area of active weathering has more loose weathered materials, which decreases the internal cohesion of slope materials and thus strength, and favours mass movement.
* Vegetation roots prevent mass movement as they strengthen the bonding between soil particles. However, they also secrete organic acid, which weathers rocks below. This will weaken the rocks, decreasing the internal cohesion of slope materials and thus strength.
* Strong earthquakes can trigger earthquakes. The 2008 Sichuan earthquake and 2011 Japanese earthquake are examples.

## Landslides

A scar is left when a landslide occurs. Landslides will be discussed in detail later.

## Rockfall

The rocks vary in size, from small grains to huge rocks. Tors are a typical example. If they stand on steep slopes, their bases may be removed by rain, seawater, or some other agent. Strong winds and the construction of roads are also common culprits. They will lose support and the stress will increase greatly, exceeding the strength. Thus they will fall suddenly.
Rock fragments called screes are found at the foothill. A scree slope is formed.

## Soil creep

Soil creep is caused by alternate wetting and drying, thermal expansion and contraction or freeze and thaw.
* When soil expands (i.e. wets/freezes/expands thermally), it expands at right angles to the slope.
* When soil contracts (i.e. dries/thaws/contracts thermally), it falls back vertically to the slope of the bedrock.
* The material is moved downslope after each successive movement.
Several good indicators of soil creep include terracettes, bent trees, bulging fences, tilted walls and soil accumulation.
# HKDSE Geography/E1/Mining

Sliver Mine Bay
Ma On Shan
Anderson Quarry
# Data Structures/Algorithm Implementations

Count inversion pair in array range 1 to n
Problems:
Give an array[1..n], a pair call inversion if with i, j (1 <= i <j <= n) and (array[i] > array[j]) counting how many inversions pair?
Solution: Use divide and conquer (Hint: same with merge sort)
C++ source code:
# Data Structures/About the Book

Acknowledgment is given for using some contents from Wikipedia.
# Data Science and Artificial Intelligence with Julia/The Julia Programming Language

The Julia Programming language is an open programming language offering a high level of performance and features that make it ideal for certain mathematical operations, including some pertaining to data science and AI.
# Historical Geology/Fossils and absolute dating

In this article we shall discuss how fossils can be used for the purposes of absolute dating.

## Fossils and dating

We have already discussed the construction of the geological column. If our stratigraphic methods show that fossil A was always deposited below fossil B whenever we are in a position to compare their dates of deposition, then we can conclude that species A is older than species B. We can apply the same sort of reasoning to the stratigraphic relationships of fossils and datable rocks.
For example, suppose that using stratigraphic methods, we can show that a particular fossil is always older than rocks which are 14 million years old or less, and always younger than rocks which are 16 million years old or more, whenever we are in a position to make a comparison.
Now, it is a fundamental principle of science — arguably, the only fundamental principle of science — that a rule that works every time we can test it must be taken as true unless and until we find a counterexample. So in this case we would have to conclude that this fossil species is between 14 and 16 million years old wherever we find it, even in those cases where there are no datable rocks that we can compare it to.
But this means that we can now use the fossil species to date the sedimentary rocks in which it is found; and we can say that those fossils found in the same strata as this species must be the same age; those species which stratigraphy tells us are older than it is must be more than 16 million years old; and those species which stratigraphy tells us are younger than it is must be less than 14 million years old.
Hence we can use datable rocks to put dates on fossil species; and then we can use the fossil species to put dates on other rocks which would otherwise be difficult to date.
Those fossils we have described as "index fossils" are particularly suitable for this purpose, since they have a wide geographical distribution but only inhabit a thin slice of time.

## Advantages of the method

There are three main advantages of using fossils for dating in this manner.
First of all, we may want to date a stratum which is a long way up or down from any rocks we can date using radiometric methods. In this case, the use of fossils will be absolutely the best method available.
Second, it is much faster than any more technical method. Why send a rock to a laboratory and wait for a reply when you can just glance at the fossils it contains and say: "Ah yes, Early Ordovician"?
Third, by the same token, it's much cheaper. Radiometric dating requires specialized equipment: lasers, spectrometers, or in the case of Ar-Ar dating a small nuclear reactor. Even the humblest items of equipment come at a price: laboratories that carry out U-Pb dating wash the bottles they use for two years continuously to eliminate contamination. Rather than employ the services of such a laboratory, it is so much cheaper for the geologist to recognize a well-known species of ammonite, trilobite, foraminiferan, or whatever, the age of which is already known.
← Tidal rhythmites and dating · Absolute dating: an overview →
# Historical Geology/Rocks

In this article we shall look at the most significant way in which geologists classify rocks. The reader should recall from the article on minerals that a rock is an aggregate of one or more minerals or mineraloids.

## Igneous, sedimentary, and metamorphic rocks

There are all sorts of ways that we might classify rocks. We might, for example, divide them up according to chemistry: and indeed the distinction between silicates and carbonates is a useful one. We might also classify rocks according to whether they contain felsic or mafic minerals, and as we shall see this is a good way to classify certain rocks. But the most fundamental way in which geologists classify rocks is to label them as igneous, sedimentary, or metamorphic.
* Igneous rocks are rocks formed by the cooling and setting of molten rock.
* Sedimentary rocks are formed by sediment (for example, sand or mud) turning into rock (such as sandstone or mudrock).
* Metamorphic rocks are formed when rocks are subjected to heat, to pressure, to chemical reactions, or to any combination of these three, in such a way as to change the properties of the original rock in some way.

## The rock cycle

The three types of rock can be converted into each other by geological processes. Metamorphism can turn igneous and sedimentary rocks metamorphic; erosion can turn igneous and metamorphic rocks into sediment which can then become sedimentary rock; and sedimentary and metamorphic rocks can be melted down into molten rock which can then cool to form igneous rock.
The relation between the various kind of rocks can be summarized by a diagram of the rock cycle. One representation of it is shown to the right.

## How do we know?

At this point we are beginning to touch on the main theme of this textbook. For to classify rocks as igneous, sedimentary, or metamorphic is implicitly to classify them not by their directly observable properties such as color or density or chemical composition, but by their history as inferred from their present-day properties. The reader will therefore want to know how this history is inferred. This question will be answered in separate articles on igneous, sedimentary, and metamorphic rocks.
In the meantime, let us observe how intrinsically historical geology is. After we've got past the most basic of considerations such as defining a mineral and defining a rock, we are plunged into historical considerations. And this is not just because this course is about historical geology: it would be the same if it was an introduction to how to find oil. Geology is so intrinsically a historical science that if we tried to do without historical inferences we might as well classify rocks by how pretty they are for all the good it would do us.
← Silicate minerals · Igneous rocks →
# Healthy eating habits/The Low Carbohydrate Diet: Risks, Alternatives and Monitoring intake (Tiffany Zikou)
### Complex carbohydrates

Complex carbohydrates refer to unrefined/unprocessed wholemeal breads, cereals, as well as brown rice and quinoa that contain long chains of glucose molecules. They require more work by the body to digest. These are referred to as ‘Low GI foods’ because they provide a more sustained release of energy, keeping you fuller for longer as well as containing essential nutrients such as fibre, B group vitamins and folate.
For more information regarding healthy carbohydrate product choices as well as information about other food groups, please visit: http://www.eatforhealth.gov.au/food-essentials

## References

* ↑ Longe J. (2008). Carbohydrates. The Gale Encyclopedia of Diets: A Guide to Health and Nutrition. Cengage Learning Australia.
# Heat Transfer

About this book
An introductory text which should be of particular interest to students of chemical or mechanical engineering.
Contents of subject
Introduction The basics
Heat Balances What goes in must come out
Conduction A mechanism of heat transfer
Convection A mechanism of heat transfer
Radiation A mechanism of heat transfer
Heat Transfer with Phase Change Different rules apply when this happens
Heat Exchangers Industrial devices for heating, cooling and saving energy
Appendices There may be something in here later
Bibliography Recommended for more in-depth study

### See also

* Subject:Physics
* Engineering Thermodynamics
# Digital Media & Culture: Collaborative Essay Collection 2018/Collective Intelligence
## Collaborative Essays on the Theme of Collective Intelligence

Research Question 1: The Sum of Parts Research Question to be decided.
Research Question 2:Fairman Fairplay In what ways do online media and communities influence collective and individual actions and/or behaviors? Draw from relevant examples and scholarship to discuss.
Research Question 3:
# Horticulture/Maggots

Maggots, Flies and Midges :
| Type: | Insect |
| Order: | Diptera |
| Metamorphosis: | Complete |
A maggot is the larval stage of the fly life cycle, though sometimes "maggot" is used to refer to the larval stage of any insect. Many maggots feed on carrion and other wastes, but some are crop pests and others are predators and parasites.

## Description

Maggots are generally 4 to 12 mm in length depending on their stage of growth. Most maggots range from an off-white color to a light brown, though some can be a yellow or reddish color. Maggots have one pair of tiny hook-like parts to aid in feeding and have no legs.
The adults are easily recognized since this is the only order of insects that has only one pair of wings ("Diptera" meaning 2 wings). They be scary.

## Symptoms and Signs

Pest maggots can be leaf or root feeders, borers, or leaf miners.

## Ecology

The fly life cycle is composed of four stages: egg, larva (commonly known as a maggot), pupa, and adult. Most feeding is done in the maggot stage.
# Horticulture/Lonicera x heckrottii

Flame honeysuckle :
| Binomial: | Lonicera x heckrottii |
| Genus: | Lonicera |
| Family: | Caprifoliaceae |
| Type: | vine |
| Light requirements: | full sun to part shade |
| Water requirements: | drought tolerant |
| Soil requirements: | rich, fertile, well-drained |
| Bloom season: | year round |
Lonicera x heckrottii is a garden hybrid, grown for its showy clusters of pink flowers and evergreen foliage. Flowers are produced throughout the year, even in winter.

## Description

This is a vigorous, twining vine, leaves are opposite, fused at the top. The flowers are in terminal clusters of 5-10 , pink, and tubular.

## Growing Conditions

Requires a trellis or fence for support. Performs best in rich, well-drained soils in full sun. For winter flowering, shelter from wind is helpful.

## Pests and Diseases

Problems are uncommon. See Lonicera for a list of pests and diseases affecting the genus.
# Horticulture/Lygus lineolaris

Tarnished Plant Bug :
| Binomial: | Lygus lineolaris |
| Order: | Hemiptera |
| Metamorphosis: | simple |
| Diseases vectored: | Some viral diseases |
The Tarnished Plant Bug is a serious pest of both food crops and ornamentals, with a wide range of hosts and capable of causing considerable damage.

## Symptoms and Signs

Buds and terminal branches often become yellowed, wilted, or aborted due to heavy sap feeding.

## Host plants

Affected genera include but are not limited to the following:
* Amaranthus (Amaranth)
* Apium
* Armoracia (Horseradish)
* Asparagus
* Aster
* Astilbe
* Beta (Beet)
* Brassica (Coles)
* Capsicum (Pepper)
* Chenopodium
* Chrysanthemum
* Cichorium
* Citrullus (Watermelon)
* Conyza (Horseweed)
* Coriandrum (Coriander, Cilantro)
* Cucumis (Cucumber, Melon)
* Cucurbita (Squash)
* Cynara (Artichoke)
* Dahlia
* Daucus ( Carrot)
* Erogeron (Fleabane)
* Foeniculum (Fennel)
* Fragaria (Strawberry)
* Glycine (Soybean)
* Gossypium (Cotton)
* Helianthus (Sunflower)
* Hydrangea
* Impatiens
* Ipomoea (Morning Glory, Sweet Potato)
* Lactuca (Lettuce)
* Laryx (Larch)
* Lycopersicon (Tomato)
* Malus (Apple)
* Medicago (Medic, Alfalfa)
* Papaver (Poppy)
* Pastinaca (Parsnip)
* Petroselinum (Parsley)
* Phaseolus (Bean)
* Phlox
* Picea (Spruce)
* Pinus (Pine)
* Pisum (Pea)
* Prunus (Stone Fruits)
* Pseudostuga (Douglassfir)
* Pyrus (Pear)
* Raphanus (Radish)
* Rubus (Bramble)
* Rudbeckia (Coneflower)
* Rumex (Dock)
* Salvia (Sage)
* Solanum (Nightshades)
* Solidago (Goldenrod)
* Spinacia (Spinach)
* Tagetes (Marigold)
* Trifolium (Clover)
* Verbena
* Viburnum
* Vicia (Vetch)
* Vigna
* Zea (Corn)
* Zinnia

## Control

* Cultural controls: Do not mow weedy areas while susceptible fruit plants are flowering, to avoid the pest migrating from weeds to garden plants.
* Pesticides: Fenvalerate
* Organic pesticides: Neem Oil
* Predators and parasites: Anaphis iole (eggs), Leiophron uniformis (nymphs), Peristenus pallipes (nymphs) Peristenus pseudopallipes (nymphs), and Peristenus digoneutis

## References

* University of Florida
# Horticulture/Lonicera pileata

Privet honeysuckle :
| Binomial: | Lonicera pileata |
| Family: | Caprifoliaceae |
| Type: | Low shrub |
| Light requirements: | Full sun to light shade |
| Water requirements: | Drought tolerant |
| USDA Hardiness Zone: | (5)-6-8-(9) |
| Propagation: | Layering |
| Pest issues: | Rare |
| Disease issues: | Rare |
| Weediness: | Aggressive spreader |
| Pollination: | Insects and hummingbirds |
The Privet Honeysuckle is a low-growing evergreen shrub or groundcover, useful for planting on banks or other areas due to its low maintenance needs.

## Description

This is a low, spreading shrub with an arching habit and "fishbone-like" leaves and secondary branches. The leaves are small, simple, shiny dark green. The small white flowers are borne in the axils in pairs, and while they are not showy they do attract hummingbirds.

## Growing Conditions

Does best in well-drained soils. May require some shelter in the colder part of the range.

## Cultivars

* ‘Moss Green’: Compact, low-growing.
* ‘Royal Carpet’: Straight branches and purple fruit.

## Uses

The arching habit makes it a good candidate for growing over walls or on steep banks. Layers readily and spreads fairly quickly.
The branches are also useful for floral arrangements.

## Maintenance

Very easy. Can outgrow its space, but easily reined in.

## Propagation

Layering is the most common method.

## Pests and Diseases

Problems are rare in the garden. Occasionally browsed by deer, but grows back readily. See Lonicera for a full discussion of pests and diseases affecting the genus.

## References

* Christopher Brickell and Judith D. Zuk (1997). The American Horticultural Society A-Z Encyclopedia of Garden Plants. DK Publishing. p. 632. {{cite book}}: Cite has empty unknown parameter: |coauthors= (help)